將PolarDB的數據同步至Hologres時,您需要參考本文在數據源中配置好網絡、白名單、權限等配置,為后續的數據同步方案執行做好網絡環境和賬號權限的準備。

前提條件

在進行數據源配置前,請確保已完成以下規劃與準備工作。
  • 數據源準備:已購買來源數據源PolarDB MySQL、去向數據源Hologres。本文以阿里云PolarDB MySQL作為來源數據源進行示例。
  • 資源規劃與準備:已購買獨享數據集成資源組,并完成資源配置。詳情可參見資源規劃與配置。
  • 網絡環境評估與規劃:進行數據集成前,您需根據業務情況,打通數據源、獨享數據集成資源組之間的網絡,網絡聯通后參考本文進行交換機、白名單等網絡環境下的訪問配置。
    • 如果數據源和獨享數據集成資源組均處于同地域的同一VPC網絡中,數據源與資源組間的網絡天然聯通。
    • 如果數據源和獨享數據集成資源組均處于不同的網絡環境中,您需要通過VPN網關等方式,將數據源與資源組間的網絡打通。

背景信息

將來源數據源的數據同步至去向數據源時,您需要保障數據源與DataWorks的數據集成資源組在網絡上是聯通的,且不存在賬號權限的訪問限制。
  • 網絡白名單
    以下以使用同一VPC網絡環境為例,您需要將數據集成資源組所在的VPC網段添加至白名單中,保障數據集成資源組可訪問數據源。網絡聯通vpc
  • 賬號權限

    您需要規劃一個可訪問數據源的賬號,用于后續數據集成過程中訪問數據源并進行數據提取、寫入的同步操作。

  • 其他訪問限制。

    來源數據源為阿里云PolarDB MySQL時,您需要開啟Binlog。阿里云PolarDB MySQL是一款完全兼容MySQL的云原生數據庫,默認使用了更高級別的物理日志代替Binlog,但為了更好地與MySQL生態融合,PolarDB支持開啟Binlog的功能。

使用限制

  • 目前僅支持使用同步方案同步PolarDB MySQL類型的數據源,不支持同步其他類型的PolarDB數據源。文中均使用PolarDB代指PolarDB MySQL類型的數據源。
  • PolarDB目前只能用主節點(讀寫庫)進行實時同步。
  • 不支持XA ROLLBACK,針對已經XA PREPARE的事務數據,實時同步會將其同步到目標端,如果XA ROLLBACK,實時同步不會針對XA PREPARE的數據做回滾寫入的操作。若要處理XA ROLLBACK場景,需要手動將XA ROLLBACK的表從實時同步任務中移除,再添加表后重新進行全量數據初始化以及增量實時同步。

操作步驟

  1. 配置白名單。
    將獨享數據資源組所在的VPC網段添加至PolarDB集群白名單中,操作如下:
    1. 查看并記錄獨享數據資源組所在的VPC網絡。
      1. 登錄DataWorks控制臺。
      2. 在左側導航欄,單擊資源組列表。
      3. 獨享資源組頁簽下,單擊目標數據集成資源組后的查看信息。
      4. 復制對話框中的EIP地址網段至數據庫白名單。查看EIP地址和網段
      5. 獨享資源組頁簽下,單擊目標數據集成資源組后的網絡設置。
      6. 專有網絡綁定頁簽,查看交換機網段并將其添加至數據庫的白名單中。查看交換機網段
    2. 將上述步驟中記錄的獨享數據資源組的EIP和網段添加至PolarDB的白名單中。
      polardb白名單操作詳情可參見設置白名單。
  2. 創建賬號并配置賬號權限。
    您需要規劃一個數據庫的登錄賬戶用于后續執行操作,此賬戶需擁有數據庫的 SELECT, REPLICATION SLAVE, REPLICATION CLIENT權限。
    1. 創建賬號。
      操作詳情可參見創建數據庫賬號。
    2. 配置權限。
      您可參考以下命令為賬號添加此權限,或直接給賬號賦予SUPER權限。
      -- CREATE USER '同步賬號'@'%' IDENTIFIED BY '同步賬號';
      GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO '同步賬號'@'%';
  3. 開啟PolarDB的開啟Binlog。
    操作詳情可參見開啟Binlog

后續步驟

配置完成數據源后,來源數據源、資源實例、去向數據源彼此間已可網絡聯通,且不存在訪問限制。您可將來源數據源和去向數據源添加至DataWorks的數據源列表中,便于后續創建數據同步方案時關聯來源和去向數據源。

添加數據源操作可參見添加數據源。