從 MySQL 匯入中繼資料

本文說明如何使用 Knowledge Catalog 連接器,將 MySQL 的中繼資料匯入 Knowledge Catalog (舊稱 Dataplex Universal Catalog)。

這個連接器支援地端部署、Cloud SQL 或其他雲端環境中代管的 MySQL 執行個體。

從 MySQL 匯入中繼資料前,請先完成下列工作:

  1. 授予必要的角色和權限
  2. 啟用 Knowledge Catalog 和 BigQuery 資料移轉服務 API
  3. 符合 MySQL 先決條件
  4. 符合網路必要條件

IAM 角色和權限

如要建立及管理 Knowledge Catalog 連接器工作,您需要 Identity and Access Management (IAM) 角色,授予 Knowledge Catalog 和 BigQuery 資料移轉服務的權限。

如要取得設定 MySQL 連接器所需的權限,請要求管理員授予下列 IAM 角色:

此外,您必須授予 BigQuery 資料移轉服務服務代理程式 (service-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com) dataplex.entryGroups.import 權限或「Dataplex Entry Group Importer」(Dataplex 項目群組匯入者) (roles/dataplex.entryGroupImporter) 角色。您可以在專案層級或項目群組層級授予這個角色。

如要進一步瞭解如何授予角色,請參閱「管理存取權」。

啟用 API

啟用 Knowledge Catalog 和 BigQuery 資料移轉服務 API。

啟用 API

MySQL 先決條件

確認您符合 MySQL 轉移作業的先決條件。詳情請參閱 BigQuery 資料移轉服務說明文件中的「MySQL 先決條件」。

除了 BigQuery 資料移轉服務的必要條件外,您的 MySQL 資料庫也必須符合下列中繼資料擷取作業需求:

  • 最低版本:MySQL 8.0 以上版本。
  • 最低必要權限:擷取工具需要特定權限,才能順利查詢 INFORMATION_SCHEMA 並收集中繼資料。

這些權限可確保涵蓋下列中繼資料:

  • 執行個體和資料庫資訊:主機名稱、通訊埠、版本和結構定義設定。
  • 資料表和資料欄:核心結構、資料類型和作業中繼資料,例如大小和資料列計數。
  • 索引和分區:次要索引、分區方法和運算式。
  • 檢視表:虛擬資料表結構和定義。
  • 常式:預存程序、函式及其參數。
  • 限制:詳細的主鍵、外鍵、唯一和檢查限制。
  • 觸發條件:觸發條件定義和事件時機。

如要授予這些權限,請執行下列 SQL 指令碼。

  1. 建立使用者:

    CREATE USER 'USERNAME'@'%'
    IDENTIFIED BY 'PASSWORD';
    
  2. 授予中繼資料存取權。您可以授予單一目標資料庫的存取權,也可以授予執行個體上所有資料庫的存取權。

    如要授予單一目標資料庫或結構定義的存取權,請按照下列步驟操作:

    GRANT SELECT, SHOW VIEW, REFERENCES, EXECUTE, TRIGGER
    ON DATABASE_NAME.*
    TO 'USERNAME'@'%';
    

    或者,如要授予執行個體中所有資料庫的存取權,請按照下列步驟操作:

    GRANT SELECT, SHOW VIEW, REFERENCES, EXECUTE, TRIGGER
    ON *.*
    TO 'USERNAME'@'%';
    
  3. 允許擷取工具列出執行個體上的所有可用資料庫:

    GRANT SHOW DATABASES ON *.* TO 'USERNAME'@'%';
    
  4. 套用變更:

    FLUSH PRIVILEGES;
    

網路事前準備

透過 Private Service Connect 連線時,必須使用網路連結,才能安全地連線至外部資料庫或第三方雲端資料來源,並使用私人網路內的私人 IP 位址,讓 BigQuery 資料移轉服務存取資料庫。

如要使用公用 IP 位址連線至地端部署環境或雲端代管執行個體,則不需要網路附件。

設定 MySQL 連接器

  1. 前往 Google Cloud 控制台的「Knowledge Catalog」頁面。

    前往 Knowledge Catalog

  2. 在導覽選單的「管理」部分中,按一下「連接器」

  3. 按一下「新增連線」

  4. 在「連線器」清單中,選取「MySQL」資訊卡。

  5. 在「Data source details」(資料來源詳細資料) 區段中,提供 MySQL 執行個體的連線詳細資料:

    • 在「Network attachment」(網路連結) 部分,視需要選取現有的網路連結,或是建立一個。
    • 輸入「主機」、「通訊埠」、「資料庫名稱」、「使用者名稱」和「密碼」
    • 如果使用 TLS,請選取「TLS Mode」(TLS 模式),並提供「Trusted PEM Certificate」(信任的 PEM 憑證)
    • 在「MySQL metadata objects to import」(要匯入的 MySQL 中繼資料物件) 部分,點選「Browse」(瀏覽) 選取物件。
  6. 在「Destination settings」(目的地設定) 部分:

    • 按一下「瀏覽」,然後選取現有的「知識目錄項目群組」來儲存匯入的中繼資料,或按一下「建立新的項目群組」
    • 選擇要立即或稍後設定項目群組權限。設定權限,讓使用者可以查看匯入的中繼資料。如果未在專案層級將 Dataplex 項目群組匯入者 (roles/dataplex.entryGroupImporter) 角色或 dataplex.entryGroups.import 權限授予 BigQuery 資料移轉服務服務代理程式 (service-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com),則必須在項目群組層級授予。
  7. 在「Connector config name」(連接器設定名稱) 部分,「Display name」(顯示名稱) 請輸入中繼資料匯入工作的名稱。

  8. 在「Schedule options」(排程選項) 專區中,設定中繼資料匯入工作的頻率。如果選取「On-demand」(隨選),這項工作只會在您手動觸發後執行。

  9. 選用步驟:在「Notification options」(通知選項) 部分,設定作業失敗的電子郵件或 Pub/Sub 通知。

  10. 選用:在「Advanced options」(進階選項) 部分,設定加密設定。如果您選取客戶自行管理的加密金鑰 (CMEK),請注意,系統會使用該金鑰加密在啟動 Knowledge Catalog 中繼資料匯入工作前暫存的所有資料。不會用於加密目的地 Knowledge Catalog 項目群組中的中繼資料。

  11. 按一下 [儲存]

建立工作後,知識目錄會根據設定排定首次執行時間,您也可以手動啟動工作。

後續步驟