將資料從 Azure SQL Managed Instance 複製到 Autonomous Transaction Processing

瞭解如何使用 OCI GoldenGate 將資料從 Azure SQL Managed Instance 複製到 Autonomous Database。

開始之前

若要順利完成此快速輸入,您必須:
  1. 建立 Azure SQL 受管理執行處理資源
  2. 設定 Azure SQL Managed Instance 以允許公用連線
  3. 使用 SQL 從屬端連線至 Azure SQL Managed Instance ,然後完成下列步驟:
    1. 建立 GGADMIN 使用者:
      CREATE login GGADMIN with password = 'W3lcome@1234'
      Create user GGADMIN for login GGADMIN
      ALTER SERVER ROLE sysadmin ADD MEMBER GGADMIN

      附註:

      只有新增 TRANDATA 和 Heartbeat tables 時,才需要 sysadmin 角色。然後,您可以移除 sysadmin 權限,而改用 db_owner: ALTER ROLE db_owner ADD MEMBER GGADMIN;
    2. 建立資料庫:
      Create database SRC_OCIGGLL
    3. 以新建的使用者 (GGADMIN) 和資料庫 (SRC_OCIGGLL) 身分中斷連線並重新連線。
    4. 在資料庫層次啟用變更資料擷取 (CDC):
      EXECUTE sys.sp_cdc_enable_db
    5. 建立綱要:
      Create schema GGADMIN
    6. 執行 SQL 命令檔
  4. 設定 Autonomous Transaction Processing:
    1. 下載並解壓縮範例資料庫綱要
    2. 在 Oracle Cloud 主控台中,從「自治式資料庫」頁面選取您的 ATP 執行處理,以檢視其詳細資訊。
    3. 按一下資料庫動作
    4. 解除鎖定 GGADMIN 使用者:
      1. 管理下方,按一下資料庫使用者
      2. 找出 GGADMIN ,然後按一下其省略符號功能表 (三個點),然後選取編輯
      3. 在「編輯使用者」面板中,輸入 GGADMIN 密碼、確認密碼,然後取消選取帳戶已鎖定
      4. 按一下套用變更
    5. 載入目標範例綱要和資料:
      1. 從「資料庫動作」功能表的開發下,選取 SQL
      2. 將命令檔從 OCIGGLL_OCIGGS_SETUP_USERS_ADW.sql 複製並貼到 SQL 工作表中。
      3. 按一下執行命令碼。「命令檔輸出」頁籤會顯示確認訊息。
      4. 清除 SQL 工作表,然後從 OCIGGLL_OCIGGS_SRC_MIRROR_USER_SEED_DATA.sql 複製並貼上 SQL。
      5. 若要確認表格已順利建立,請關閉 SQL 視窗,然後重新開啟。在「導覽器」頁籤中,尋找 SRC_OCIGGLL 綱要,然後從它們各自的下拉式清單中選取表格。

工作 1:建立 OCI GoldenGate 資源

此快速啟動範例需要來源和目標的部署和連線。
  1. 為來源 SQL Server 和目標 Oracle 資料庫建立部署
  2. 使用下列值建立 Azure SQL 資料庫的 Azure 受管理執行處理連線
    1. 資料庫中,輸入 SRC_OCIGGLL
    2. 連接埠中,輸入公用端點的 3342
    3. 若為主機,請使用 Azure 主控台中「Azure 受管理執行處理詳細資訊」頁面的伺服器名稱 (例如,xyz.database.windows.net) .
    4. 對於使用者,請輸入 GGADMIN
    5. 如果是密碼,請輸入 GGADMIN 使用者密碼。
    6. 如果是安全協定,請從下拉式清單中選取純文字
  3. 指定 SQL Server 部署的「Azure 管理執行處理」連線
  4. 建立 GoldenGate 連線,然後將其指派給 SQL Server 部署
  5. 建立 Autonomous Transaction Processing (ATP) 連線
  6. 指定 Oracle 部署的可承諾量連線

任務 2:建立擷取

建立 Initial LoadChange Data Capture Extracts
  1. 在「建置」頁面上,選取在「工作 1」中建立的 SQL Server 建置。
  2. 在「部署詳細資訊」頁面上,按一下啟動主控台
  3. 使用您在任務 1 中建立部署時指定的管理員憑證登入來源 SQL Server 部署主控台。
  4. 新增異動資訊
    1. 在導覽功能表中,依序按一下資料庫連線、來源資料庫及 TRANDATA
    2. 在「交易資料」頁面上,按一下新增交易資料 (加號圖示)。
    3. 在「新增交易資料」面板的結構名稱中,輸入 SRC_OCIGGLL,然後按一下提交

      秘訣:

      送出時不會重新整理畫面。若要確認已新增 TRANDATA,請在搜尋欄位中輸入 SRC_OCIGGLL,然後按一下搜尋。會傳回 SRC_OCIGGLL,並準備 6 個表格來建立。
  5. 接著,在導覽功能表中選取工作,然後選取 Purge Change Data ,然後完成下列項目:
    1. 按一下新增永久清除變更資料 (新增圖示)。
    2. 輸入名稱。
    3. 按一下提交
  6. 新增 Initial Load Extract
    1. Extracts 頁面上,按一下 Add Extract (加號圖示),然後完成表單,如下所示:
      • Extract 資訊頁面上:
        1. 對於 Extract 類型,請選取 Initial Load
        2. 程序名稱中,輸入 EIL
        3. 按一下下一步
      • 在「參數檔」頁面上,使用下列項目取代 MAP *.*, TARGET *.*;
        TABLE SRC_OCIGGLL.*;
    2. 按一下建立並執行
    您可返回「摘錄」頁面,在該頁面可能需要一點時間才能啟動「摘錄」。接著,您可以選取「擷取」以複查其詳細資料,並複查「報表」檔案。它會列出所有表格,以及每個表格的匯出記錄數目。
  7. 新增 Integrated Extract
    1. 按一下導覽功能表中的 Extracts
    2. Extracts 頁面上,按一下 Add Extract (加號圖示),然後完成表單,如下所示:
      • Extract 資訊頁面上:
        1. 對於 Extract 類型,請選取 Change Data Capture
        2. 程序名稱中,輸入 ECDC
        3. 按一下下一步
      • 在「摘錄選項」頁面上:
        1. 若為來源證明資料,請選取來源資料庫的女人別名
        2. Extract Trail 名稱中,輸入兩個字元的名稱,例如 C1
        3. 按一下下一步
      • 在「參數檔」頁面上,使用下列項目取代 MAP *.*, TARGET *.*;
        TABLE SRC_OCIGGLL.*;
    3. 按一下建立並執行

工作 3:建立 Distribution Paths

  1. 如果使用 GoldenGate 證明資料存放區,請建立目標 Oracle 建置中 Distribution Path 的使用者,以及來源 SQL Server 建置中的「路徑連線」。如果使用 IAM 證明資料存放區,請略過此步驟。
  2. 在來源 Azure SQL Managed Instance GoldenGate 部署主控台中,建立 Initial Load ExtractDistribution Path 。在我們的範例中,我們將 Initial Load Extract 命名為 EIL
  3. 建立 Change Data Capture ExtractDistribution Path 。在我們的範例中,我們將 Change Data Capture Extract 命名為 ECDC

工作 4:建立複本

  1. 啟動並登入在任務 1 中建立的 Oracle 部署主控台。
  2. 開啟導覽功能表,然後按一下資料庫連線 (DB Connections)
  3. 按一下連線到資料庫
  4. 新增 Checkpoint table
    1. 按一下導覽功能表中的 Checkpoint
    2. Checkpoint 頁面中,按一下新增 Checkpoint (加號圖示)。
    3. Checkpoint Table 中,輸入 SRCMIRROR_OCIGGLL.CHECKTABLE
    4. 按一下提交
      Checkpoint table 會顯示在清單中。
  5. Initial Load Extract 新增 Replicat
    1. 依序按一下管理員服務 (Administrator Service) Replicats
    2. Replicats 頁面上,按一下新增 Replicat (加號圖示),然後完成表單,如下所示:
      1. Replicat 資訊上,完成下列表單欄位,然後按一下下一步
        1. 對於 Replicat 類型,請選取 Nonintegrated Replicat
        2. 針對程序名稱,輸入名稱,例如 RIL
      2. 在「Replicat 選項」頁面上,完成下列表單欄位,然後按下一步
        1. 名稱中,輸入工作 2 的歷程檔名稱 (I1)。
        2. 若為網域,請選取 Autonomous Database 連線的網域。
        3. 若為別名,請選取 Autonomous Database 連線的別名。
        4. Checkpoint table 中,選取您在步驟 4 中建立的 Checkpoint table
      3. 在「參數」頁面上新增下列對應,然後按一下建立並執行
        MAP SRC_OCIGGLL.*, TARGET SRCMIRROR_OCIGGLL.*;

      您可以返回「總覽」頁面,您可以在此頁面複查 Replicat 詳細資訊。

    3. 選取 Replicat ( RIL) 並檢視其詳細資訊
    4. 按一下統計資料並複查插入數目。重新整理頁面.
      • 如果插入數目未變更,則會載入來自 Initial Load 的所有記錄,您可以停止 Replicat ( RIL)。
      • 如果「插入」數目持續增加,請持續重新整理頁面,直到 Initial Load 記錄全部載入後再繼續。
  6. Change Data Capture 新增 Replicat
    1. Replicats 頁面上,按一下新增 Replicat (加號圖示),然後完成表單,如下所示:
      1. Replicat 資訊上,完成下列表單欄位,然後按一下下一步
        1. 若為 Replicat 類型,請選取非整合式 Replicat
        2. 針對程序名稱,輸入名稱,例如 RCDC
      2. 在「Replicat 選項」頁面上,完成下列表單欄位,然後按下一步
        1. 歷程檔名稱中,輸入任務 2 的歷程檔名稱 (C1)。
        2. 若為網域,請選取 Autonomous Database 連線的網域。
        3. 若為別名,請選取 Autonomous Database 連線的別名。
        4. Checkpoint table 中,選取您在步驟 4 中建立的 Checkpoint table
      3. 在「參數」頁面上,新增下列對應:
        MAP SRC_OCIGGLL.*, TARGET SRCMIRROR_OCIGGLL.*;
    2. 按一下建立。請勿執行 Replicat
    3. Replicats 頁面上,選取 Initial Load ( RIL) 的 Replicat,並檢視其詳細資訊
    4. 按一下統計資料並複查插入數目。重新整理頁面.
      • 如果插入數目未變更,則會載入來自 Initial Load 的所有記錄,您可以停止 Replicat (RIL)。
      • 如果「插入」數目持續增加,請持續重新整理頁面,直到 Initial Load 記錄全部載入後再繼續。

        附註:

        如果未見到任何「插入」,請按一下 Performance Metrics Service ,選取 Extract ,然後按一下資料庫統計資料
    5. 返回 Administration Service Replicats 頁面,然後啟動 RCDC Replicat
    6. 啟動 RCDC 之後,請複查其詳細資訊統計資料以檢視「插入」數目。