當目錄結構不同時將 PostgreSQL 資料庫傳輸到 Google Cloud Platform (GCP)

當目錄結構不同時將 PostgreSQL 資料庫傳輸到 Google Cloud Platform (GCP)

我有一個本地 SUSE 12 sp3 VM,帶有 PostgreSQL 10 資料庫,大小約為 45GB。

我還有一個帶有 PostgreSQL 10 資料庫的 SUSE 12 sp3 伺服器的 Google Cloud Platform (GCP) 映像/實例,其中還沒有資料庫資料。

GCP 目錄結構和設定與本機 VM 檔案目錄和設定略有不同,但它們都是 PostgreSQL 10。

我想將盡可能多的資料從本地資料庫傳輸到 GCP 資料庫。當我完成時,資料庫應該是相同的,但目錄結構會不同。

我是 GCP 的新手。這是一次試駕。我的新資料庫需要位於區域儲存上(不是近線、冷線或多區域)。

我目前的策略是:

  1. pg_dumpall > db.out在我的舊本地資料庫上使用
  2. 將該檔案儲存db.out到我們的 Windows VM 檔案伺服器,我可以透過工作站上的映射磁碟機存取該伺服器。
  3. 在 GCP 控制台上透過我的工作站前往:存儲,選擇我的儲存桶,上傳文件,然後將 db.out 檔案上傳到我的實例所在的儲存桶。
  4. 用於psql -f db.out postgres將資料、角色等載入到我的新 GCP 實例中。

這是一個可靠的方法嗎?儘管目錄結構不同,這仍然有效嗎?有更好的方法嗎?技巧還是陷阱?

關聯:http://www.postgresql.org/docs/current/static/app-pg-dumpall.html

(我仍在尋找有用的 GCP 鏈接,因此提出了這個問題。)

請注意,「目錄結構」我指的是伺服器目錄結構。目錄結構發生了變化,因為我在 GCP 實例上以不同的方式(按照我想要的方式)安裝了 PostgreSQL 10。

謝謝!

PS - 這是在 SO 上,但刪除了它,並將問題移至此處,希望獲得更多關注。我看到其他問題被轉移或轉移,但我沒有註意到有什麼辦法可以做到這一點,至少以我目前的信譽水平是如此。另外,我本來打算將其放在 Stack Exchange 網站資料庫管理員上,直到我看到那裡只有兩個人關注 Google-Cloud 標籤。歡迎就此提出建議。

答案1

將資料庫轉儲到 sql,將其傳輸到遠端計算機,然後透過 sql 匯入資料庫,就像您所做的那樣,這是實現您想要的效果的完全正常的方法。磁碟結構確實不應該成為問題。

相關內容