將資料從 HeatWave 複製到 Google Cloud Storage

瞭解如何使用 OCI GoldenGate 將資料從 HeatWave 複製到 Google Cloud Storage

開始之前

若要順利完成此快速輸入,您必須具有下列項目:

環境設定:HeatWave

設定此「快速啟動」的環境:
  1. 下載範例資料指令碼,然後在 HeatWave 資料庫上執行指令碼以建立資料庫並載入資料。
  2. 使用下列命令檔建立 ggadmin 使用者。請記得以有效的密碼取代 <ggadmin-password>
    CREATE USER 'ggadmin' IDENTIFIED BY '<ggadmin-password>';
    GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT, CREATE,CREATE VIEW, EVENT, INSERT, UPDATE, DROP,EXECUTE, DELETE ON *.* TO 'ggadmin';
  3. 開啟 port 3306,透過此 OCI GoldenGate 可連線。
    1. 在 Oracle Cloud 主控台中,尋找 HeatWave 資料庫使用的子網路。
    2. 在子網路的安全清單中,建立 port TCP/3306 的傳入規則。

工作 2:建立 Extract

  1. 在「部署」頁面上,選取在「任務 1」中建立的 MySQL 部署。
  2. 在部署詳細資訊頁面上,按一下啟動主控台
  3. 使用您在任務 1 中建立部署時指定的管理員憑證登入來源 MySQL 部署主控台。
  4. 新增具有下列值的 Change Data Capture Extract
    • Extract 類型Change Data Capture Extract
    • 處理作業名稱ECDC
    • Extract Trail 名稱C1
    • 參數檔:將 MAP *.*, TARGET *.*; 取代為 TABLE SRC_OCIGGLL.*;

作業 3:建立 Distribution Path 以定位大數據部署

  1. 如果使用 IAM 證明資料存放區,請繼續進行步驟 3。如果使用 GoldenGate 證明資料存放區,請建立來源 GoldenGate 用來連線目標 GoldenGate 的使用者。
    1. 在「部署」頁面上,選取目標大數據部署
    2. 在部署詳細資訊頁面上,按一下啟動主控台,然後以管理員使用者身分登入。
    3. 在建置主控台導覽功能表中,按一下「使用者管理」。
    4. 按一下新增使用者 (加號圖示),依下列方式完成欄位,然後按一下送出
      • 使用者名稱中,輸入 ggsnet
      • 對於角色,請選取運算子
      • 輸入兩次密碼來進行驗證。
  2. 來源 MySQL 部署主控台中,為上一個步驟中建立的使用者建立 Path Connection
    1. 開啟導覽功能表,然後按一下 Path Connection
    2. 按一下新增 Path Connection (加號圖示) ,完成下列欄位,然後按一下送出
      • 證明資料別名中,輸入 dpuser
      • 使用者 ID 中,輸入 ggsnet
      • 密碼中,輸入與上一個步驟相同的密碼。
  3. 來源 MySQL 部署主控台中,新增具有下列值的 Distribution Path
    1. 來源選項頁面上:
      • 來源 Extract 中,選取在「任務 2」中建立的 Extract
      • 歷程檔名稱中,輸入兩個字元的名稱,例如 C1
    2. 目標選項頁面上:
      • 若為目標主機,請輸入目標部署的主機網域。
      • 對於連接埠號碼,請輸入 443
      • 歷程檔名稱中,輸入兩個字元的名稱,例如 C1
      • 別名中,輸入在步驟 2 中建立的證明資料別名。
  4. 在目標 OCI GoldenGate Big Data 部署主控台中,複查 Distribution Path 結果建立的 Receiver path
    1. 按一下 Receiver Service
    2. 檢閱 Receiver path 詳細資訊。

作業 4:為 Google Cloud Storage 新增 Replicat

  1. 在大數據部署中,按一下 Administration Service ,然後按一下新增 Replicat (加號圖示)
  2. 新增包含下列值的 Replicat
    1. Replicat 資訊頁面的 Replicat 類型下,選取 Classic Replicat ,然後輸入處理名稱。
    2. 在「Replicat 選項」頁面上:
      • 名稱中,輸入「任務 2」的「追蹤」名稱。
      • 若為目標,請選取 Google Cloud Storage
      • 若為別名,請選取在任務 1 中建立的 Google Cloud Storage 連線。
    3. 在「Replicat 參數」頁面上,保留預設值。
    4. 在「特性檔」頁面上,尋找 gg.eventhandler.gcs.bucketMappingTemplate=<gcs bucket>,然後將 <gcs bucket> 取代為儲存桶的名稱。如果您沒有儲存桶, OCI GoldenGate 會為您建立一個儲存桶。
    5. 按一下建立並執行

作業 5:驗證從 HeatWaveGoogle Cloud Storage 的資料複製

執行來源 HeatWave 資料庫的更新,以驗證複製至 Google Cloud Storage
  1. 在 OCI Bastion 中,使用 MySQL IP 和 port 3306 建立 SSH 連接埠轉送階段作業。新增您的公用 SSH 金鑰。
  2. 使用您的私密金鑰和 port 3306 連線至 Cloud Shell 中的 MySQL。
  3. 順利連線之後,請執行下列命令:
    mysqlsh admin@localhost:3306 --sql
  4. 執行下列命令檔以執行 HeatWave 資料庫的插入:
    use SRC_OCIGGLL;
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1000,'Houston',20,743113);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1001,'Dallas',20,822416);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1002,'San Francisco',21,157574);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1003,'Los Angeles',21,743878);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1004,'San Diego',21,840689);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1005,'Chicago',23,616472);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1006,'Memphis',23,580075);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1007,'New York City',22,124434);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1008,'Boston',22,275581);
    Insert into SRC_OCIGGLL.SRC_CITY (CITY_ID,CITY,REGION_ID,POPULATION) values (1009,'Washington D.C.',22,688002);
    commit;
  5. 在來源 MySQL 部署主控台中,選取 Change Data Capture Extract 名稱 (ECDC),然後按一下統計資料。確認 SRC_OCIGGLL.SRC_CITY 有 10 個插入項目。
  6. 在目標 Big Data 部署主控台中,選取 Replicat 名稱,然後按一下統計資料。確認 SRC_OCIGGLL.SRC_CITY 有 10 個插入項目。
  7. Google Cloud Storage 中,您可以檢查目標資料串流 / 資料檢視器中的訊息。