如要將 Oracle 異質遷移至 AlloyDB for PostgreSQL,資料庫遷移服務規定您必須先建立及設定 AlloyDB for PostgreSQL 目的地叢集和主要資料庫。請執行下列步驟:
- 建立目的地叢集和主要資料庫。請務必設定足夠的運算和記憶體資源,以滿足遷移需求,並遵循
已知限制中列出的規定。
建議您建立目的地叢集時,根據要使用的 目的地網路方法,採用特定設定:
如要使用... 具體做法 公開 IP 目的地連線, 建立目的地叢集,並為傳入連線啟用公開 IP。請參閱 AlloyDB for PostgreSQL 說明文件中的「 建立 AlloyDB for PostgreSQL 執行個體」。 私人 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 說明文件中的「 建立具備私人服務存取權的 AlloyDB for PostgreSQL 執行個體」。
- 如果可以使用已啟用 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"; GRANT CREATE ON SCHEMA SCHEMA_NAME TO "MIGRATION_USER_ACCOUNT_NAME"; GRANT SELECT, INSERT, UPDATE, DELETE, TRUNCATE ON ALL TABLES IN SCHEMA SCHEMA_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 遷移至 AlloyDB for PostgreSQL 指南」。