如要將異質 Oracle 資料庫遷移至 AlloyDB for PostgreSQL,您必須先建立並設定 AlloyDB for PostgreSQL 目的地叢集和主要資料庫,才能使用資料庫遷移服務。請執行下列步驟:
- 建立目的地叢集和主要資料庫。請務必設定足夠的運算和記憶體資源,以滿足遷移需求,並遵守
已知限制中列出的規定。
建議您建立目的地叢集,並使用適合 目的地網路方法的設定:
如要使用... 具體做法 公開 IP 目的地連線, 建立目的地叢集時,請為連入連線啟用公開 IP。請參閱 AlloyDB for PostgreSQL 說明文件中的「 建立 PostgreSQL 適用的 AlloyDB 執行個體」。 私人 IP 目的地連線, 判斷是否能使用已啟用 PSC 的 AlloyDB for PostgreSQL 執行個體做為遷移目的地。請仔細考量啟用 PSC 的執行個體功能限制。請參閱 AlloyDB for PostgreSQL 說明文件中的「 Private Service Connect 限制」。
- 如果可以使用已啟用 PSC 的 AlloyDB for PostgreSQL 執行個體,請建立目的地叢集並啟用 Private Service Connect。請參閱 AlloyDB for PostgreSQL 說明文件中的「
建立已啟用 PSC 的 AlloyDB for PostgreSQL 執行個體」。
您不必為目的地執行個體建立 Private Service Connect 端點。建立遷移工作時,資料庫遷移服務會在背景自動處理端點建立作業。
- 如果無法使用啟用 PSC 的 AlloyDB for PostgreSQL 執行個體,請建立啟用私人服務連線的目的地叢集。請參閱 AlloyDB for PostgreSQL 文件中的「 建立已啟用私人服務連線的 PostgreSQL 適用的 AlloyDB 執行個體 」。
- 如果可以使用已啟用 PSC 的 AlloyDB for PostgreSQL 執行個體,請建立目的地叢集並啟用 Private Service Connect。請參閱 AlloyDB for PostgreSQL 說明文件中的「
建立已啟用 PSC 的 AlloyDB for PostgreSQL 執行個體」。
- 在目的地叢集中建立下列實體:
- 用來遷移資料的資料庫。
-
專用的遷移使用者帳戶。
這個使用者帳戶的名稱必須與目的地資料庫相同。 舉例來說,如果您使用資料庫遷移服務將資料遷移至名為
myapp
的資料庫,專屬遷移使用者的名稱也應為myapp
。
- 將必要權限授予專用的遷移使用者帳戶。
請按照下列步驟操作:
-
使用
psql
用戶端連線至 AlloyDB for PostgreSQL 執行個體。 - 在目標資料庫上執行下列指令:
GRANT CREATE ON DATABASE DESTINATION_DB_NAME TO "MIGRATION_USER_ACCOUNT_NAME";
-
選用:授予遷移使用者
CREATEDB
權限,以便測試轉換後的結構定義。在遷移作業的後續階段, 轉換來源結構定義後,您可以使用資料庫移轉服務,測試轉換後的結構定義是否可套用至 PostgreSQL 資料庫。為執行測試,資料庫遷移服務會建立臨時資料庫,避免影響目的地資料庫。如要 測試轉換後的結構定義,請授予遷移使用者
CREATEDB
權限。請使用以下指令:ALTER USER "MIGRATION_USER_ACCOUNT_NAME" WITH CREATEDB;
- 如果來源資料庫含有外鍵或觸發條件:
請透過專屬遷移使用者帳戶的
REPLICATION
選項,略過外鍵和觸發條件的複製作業。執行下列指令:ALTER USER "MIGRATION_USER_ACCOUNT_NAME" WITH REPLICATION;
如要進一步瞭解資料庫移轉服務如何遷移外部鍵和觸發程序,請參閱「 外部鍵和觸發程序的注意事項」。
-
使用
後續步驟
瞭解目的地資料庫網路連線。請參閱 目的地資料庫網路方法。
瞭解遷移工作。請參閱「 建立遷移工作」一文
如需完整的遷移逐步導覽,請參閱 Oracle 至 PostgreSQL 適用的 AlloyDB 遷移指南。