通過資料訂閱功能,您可以即時訂閱增量資料,輕鬆協助業務實現輕量級緩衝更新、業務非同步解耦、含ETL邏輯的資料即時同步等情境。本文介紹如何建立PolarDB MySQL版資料訂閱通道。
前提條件
PolarDB MySQL版叢集已開啟Binlog功能,詳情請參見如何開啟Binlog。
注意事項
- 由於使用gh-ost或pt-online-schema-change等類似工具執行線上DDL變更不會被訂閱到,用戶端在將消費到的資料寫入目標表時可能會因為表結構不一致而導致寫入失敗。
- 如果訂閱的來源資料庫還處於其他任務中(例如該資料庫還存在於某個正在啟動並執行資料移轉任務中),您可能會訂閱到訂閱對象以外的資料,此類情境中,您需要手動在訂閱用戶端中過濾掉不需要的資料。
操作步驟
- 購買資料訂閱通道,詳情請參見購買資料訂閱任務。 說明 購買時,需選擇訂閱執行個體類型為PolarDB,並選擇待訂閱的PolarDB叢集所屬地區。
- 登入資料轉送控制台。
- 在左側導覽列,單擊資料訂閱。
- 在資料訂閱列表頁面上方,選擇訂閱通道所屬地區。
- 定位至已購買的資料訂閱通道,單擊配置訂閱通道。
- 配置資料訂閱的源庫資訊和網路類型。
類別 配置 說明 無 訂閱名稱 DTS會自動產生一個訂閱名稱,建議配置具有業務意義的名稱(無唯一性要求),便於後續識別。 源庫資訊 執行個體類型 固定為PolarDB執行個體,不可變更。 資料庫類型 固定為PolarDB,不可變更。 執行個體地區 購買資料訂閱通道時選擇的源執行個體地區,不可變更。 PolarDB執行個體ID 選擇待訂閱的PolarDB MySQL版叢集ID。 資料庫帳號 填入PolarDB MySQL版叢集的資料庫帳號。 說明 帳號需要具備REPLICATION CLIENT、REPLICATION SLAVE、SHOW VIEW和待訂閱對象的SELECT許可權。資料庫密碼 填入該資料庫帳號對應的密碼。 網路類型 無 設定資料訂閱執行個體所屬的網路類型。 說明建議配置同部署資料訂閱用戶端的ECS執行個體屬於同一網路。例如ECS是專用網路,那麼此處的網路類型選擇為專用網路並指定ECS所屬的專用網路和虛擬交換器。
通過內網地址進行資料訂閱時,網路延遲最小。
- 上述配置完成後,單擊授權白名單並進入下一步。
DTS會自動將對應地區DTS服務的IP地址添加到阿里雲資料庫執行個體的白名單。DTS服務的IP地址,請參見DTS伺服器的IP位址區段。
警告 DTS自動添加或您手動添加DTS服務的公網IP位址區段可能會存在安全風險,一旦使用本產品代表您已理解和確認其中可能存在的安全風險,並且需要您做好基本的安全防護,包括但不限於加強帳號密碼強度防範、限制各網段開放的連接埠號碼、內部各API使用鑒權方式通訊、定期檢查並限制不需要的網段,或者使用通過內網(專線/VPN網關/智能網關)的方式接入。 - 配置需要訂閱的資料類型和訂閱對象。
配置 說明 需要訂閱的資料類型 - 資料更新
訂閱已選擇對象的增量資料更新,包含資料的INSERT、DELETE和UPDATE操作。
- 結構更新
訂閱整個執行個體所有對象的結構建立、刪除及修改,您需要使用資料訂閱用戶端過濾所需的資料。
說明- 如果選擇整個庫作為訂閱對象,那麼該庫中新增對象的增量資料也可以被訂閱到。
- 如果選擇某個表作為訂閱對象,那麼只有這個表的增量資料可以被訂閱到。此時如果需要加入一個新的表作為訂閱對象,您需要將其加入至訂閱對象中,詳情請參見修改訂閱對象。
訂閱對象 在訂閱對象框中將想要訂閱的對象選中,單擊表徵圖將其移動到已選擇對象框。
說明 訂閱對象支援選擇的粒度為庫、表。 - 資料更新
- 上述配置完成後,單擊頁面右下角的儲存並預檢查。 說明
- 在訂閱任務正式啟動之前,會先進行預檢查。只有預檢查通過後,才能成功啟動訂閱任務。
- 如果預檢查失敗,單擊具體檢查項後的表徵圖,查看失敗詳情。根據提示修複問題後,重新進行預檢查。
- 在預檢查對話方塊中顯示預檢查通過後,關閉預檢查對話方塊。
下一步
配置完成後,資料訂閱通道會進入初始化階段,這個階段一般會持續1分鐘左右。初始化完成後即可進行如下操作: