新增 Google Cloud Spanner 的 Replicat

瞭解在 Oracle GoldenGate 部署中新增 Google Cloud Spanner 的 Replicat 之前所需的組態,以及新增 Replicat 的步驟。

新增 Replicat 之前

您必須先設定 Google Cloud 的資料庫連線、設定檢查點表格,以及在開始新增 Replicat 之前建立 Google Cloud 的資料庫連線。您也可以選擇性地建立活動訊號表。

此外,請務必查看支援的資料類型、物件和作業清單。如需詳細資訊,請參閱 Google Spanner:Supported Data Types,Objects and Operations 。

瞭解如何設定 Google Cloud for Oracle GoldenGate Replicat。

使用 IAM 驗證 Google Cloud 連線

Google Spanner 是完全託管的雲端原生分散式資料庫。對於 Oracle GoldenGate Replicat for Google Spanner,會實行無密碼認證。

Google Cloud Spanner 中的認證基本上與 MySQL、PostgreSQL 或 SQL Server 等傳統關聯式資料庫不同,因為它不是直接登入的獨立資料庫伺服器。

Spanner 使用 Google Cloud IAM (身分識別與存取管理) 並驗證會在雲端平台層級進行,而不是在 Google Spanner 中進行。

以下是透過 IAM 驗證 Google Cloud 連線的步驟:

  1. 使用者應用程式使用 JSON 檔案中的服務帳戶證明資料認證為 Google Cloud 。

    服務帳戶必須具備 roles/Spanner.databaseUser 和 roles/spanner.databaseAdmin 角色。

  2. 下載證明資料檔案:

    1. 在 cloud.google.com 登入您的 Google 帳戶。

    2. 按一下「主控台」,然後移至「儀表板」以選取您的專案。

    3. 從導覽功能表中,按一下 API 和服務,然後選取證明資料。

    4. 從「建立證明資料」功能表中,選擇「服務帳戶金鑰」。

    5. 選擇 JSON 金鑰類型以下載您系統的 JSON 證明資料檔案。在 Web 介面中新增資料庫連線時,應提供此 JSON 證明資料檔案作為輸入值。

    Spanner 僅支援 https_proxy 且不支援 http_proxy。如果您連線至代理主機伺服器背後的 Spanner,則必須設定 https_proxy,且不得設定 http_server。您可以在環境變數中設定 https_proxy,以設定 Service Manager 的組態。

新增資料庫連線、檢查點表格和活動訊號表

新增 Google Cloud Spanner Replicat 的程序與新增任何 Replicat 的程序相同。開始新增 Replicat 之前,請先設定下列組態:

  1. 新增資料庫連線。

新增目標的資料庫連線

  1. 建立資料庫別名後連線至資料庫,以確保連線成功。在資料庫連線之後,您可以新增檢查點表格。

  2. 按一下檢查點旁邊的加號,即可開啟「新增檢查點」畫面,並以 schema.table_name 格式指定檢查點表格名稱。

    新增檢查點表格

  3. 按一下提交。已新增檢查點表格。

  4. 在所連線資料庫的左側導覽窗格中,檢查活動訊號表。已啟用活動訊號表以檢查活動訊號延遲。

活動訊號表顯示為啟用 Spanner Replicat

新增 Google Spanner 的 Replicat

開始新增 Replicat 之前,請先確定已設定資料庫連線並建立檢查點表格。請參閱新增資料庫連線、檢查點表格和活動訊號表瞭解詳細資訊。

使用下列步驟建立 Google Spanner 的傳統或協調式 Replicat:

  1. 開啟「新增 Replicat」精靈,然後選取「Spanner 的傳統 Replicat」。

    新增 Google Spanner 的傳統 Replicat

  2. 指定 Replicat 名稱,然後按一下「下一步」。

  3. 指定 Replicat 選項,例如歷程檔名稱、目標證明資料以及檢查點表格名稱。

    指定 Replicat 選項,例如歷程檔名稱和檢查點表格名稱

  4. 在「參數檔」畫面中,指定 MAP 和 TARGET 詳細資訊,然後按一下建立並執行。這會建立「Spanner Replicat」。

    在 Replicat 參數檔中指定 MAP 和 TARGET 值。

注意:如果在 Replicat 參數的 MAP 敘述句中使用不合格的表格名稱,則會從 GLOBALS 檔案中指定的 GGSCHEMA 取得綱要名稱。如果未在 GLOBALS 參數中定義 GGSCHEMA,則會使用預設 (未命名) 綱要進行複製。

如果正確設定所有規格,Replicat 就會順利執行。

GoldenGate 執行中狀態之 Google Spanner 的 Replicat

使用管理從屬端新增 Replicat

開始新增 Replicat 之前,請先確定已設定資料庫連線,並建立檢查點表格和活動訊號表。請參閱新增資料庫連線、檢查點表格和活動訊號表瞭解詳細資訊。

使用下列步驟,從「管理從屬端」建立 Google Spanner 的傳統或協調式 Replicat:

  1. 從「管理從屬端」提示連線至部署。

  2. 執行下列命令以建立資料庫連線:

    ALTER CREDENTIALSTORE ADD USER "oggh-440221@xxxxxx/srcdb;client_secrets=/scratch/creds.json" nopassword alias spanner
  3. 連線到您在上一個步驟中建立的資料庫證明資料:

    DBLOGIN USERIDALIAS spanner
  4. 執行逗號以新增 Replicat:

    ADD REPLICAT nrep, classic, EXTTRAIL ea, checkpointtable ggadmin.ckpt1

    輸出會確認是否已順利新增 Replicat。

  5. 您可以使用 EDIT PARAMS 命令,在 Replicat 參數檔中新增其他 Replicat 參數。

    EDIT PARAMS nrep

    在 Replicat 參數檔中指定必要的參數。以下是 Replicat 參數檔範例:

    DDL EXCLUDE ALL
    DDLERROR default discard
    REPERROR (default,discard)
    DDLOPTIONS REPORT
    SOURCECATALOG spanner MAP hr.*, TARGET hr.*;
  6. 啟動 Replicat 並確定順利執行。

    START REPLICAT nrep

    ### 其他參考 {#GUID-C737B199-8182-47BC-986C-088BC1171863}

請參閱處理 Google Spanner 的 Replicat 中的暫時和永久錯誤,瞭解如何處理 Google Cloud Spanner 的 Replicat 錯誤。