共用方式為


將 My SQL 資料庫 CDC 來源新增至事件串流 (預覽)

注意

本文包含 SLAVE 一詞的參考,Microsoft 已不再使用該字詞。 從軟體中移除該字詞時,我們也會將其從本文中移除。

本文說明如何將 適用於 MySQL 的 Azure 資料庫 異動數據擷取來源新增至事件數據流。 適用於 Microsoft Fabric 事件數據流的 Azure My SQL 資料庫 異動數據擷取 (CDC) 來源連接器可讓您擷取 適用於 MySQL 的 Azure 資料庫 資料庫中目前數據的快照集。

您可以指定要監視的數據表,而 eventstream 會記錄數據表的任何未來數據列層級變更。 在事件數據流中擷取變更之後,您可以即時處理此 CDC 數據,並將其傳送至 Fabric 中的不同目的地,以進行進一步處理或分析。

重要

Fabric 事件數據流的增強功能目前為預覽狀態。

注意

工作區容量的下列區域不支援此來源: 美國西部 3瑞士西部

必要條件

  • 具有參與者或更高許可權的網狀架構進階工作區存取權。
  • 存取 適用於 MySQL 的 Azure 資料庫 實例 - 彈性伺服器。
  • 您的 MySQL 資料庫必須可公開存取,且不能位於防火牆後方或虛擬網路中受到保護。

注意

一個事件數據流的來源和目的地數目上限為 11

設定 MySQL DB

連接器會使用 Debezium MySQL 連接器來擷取 適用於 MySQL 的 Azure 資料庫 資料庫中的變更。 您必須在傳訊連接器可從中擷取變更的所有資料庫上,定義具有適當許可權的 MySQL 使用者。 您可以直接使用 系統管理員用戶 連線到通常具有適當許可權的資料庫,如下所示。 或者您可以遵循下列步驟來建立新的使用者

注意

新的使用者或系統管理員帳戶和對應的密碼將用於稍後在 Eventstream 內連線到資料庫。

  1. mysql 命令提示字元中,建立 MySQL 使用者:

    mysql> CREATE USER 'user'@'%' IDENTIFIED BY 'password';
    
  2. 將所需的權限授與使用者:

    mysql> GRANT SELECT, SHOW DATABASES, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'user'@'%';
    
  3. 完成使用者的權限:

    mysql> FLUSH PRIVILEGES;
    

若要確認使用者或系統管理員是否已授與必要的許可權,請執行下列命令,然後顯示上述步驟 2 中的必要許可權。

SHOW GRANTS FOR user;

如需將必要許可權授與使用者的詳細資訊,請參閱 MySQL 的 Debezium 連接器::D ebezium 檔

啟用 binlog

您必須啟用 MySQL 複寫的二進位記錄。 二進位記錄事務歷史記錄事務更新,以供復寫工具傳播變更。

  1. 在 適用於 MySQL 的 Azure 資料庫 帳戶的 [Azure 入口網站] 頁面上,選取左側導覽中 [設定] 底下的 [伺服器參數]。

  2. 在 [ 伺服器參數] 頁面上,設定下列屬性,然後選取 [ 儲存]。

    伺服器參數下複寫之二進位記錄設定的螢幕快照。

將 Azure MySQL DB (CDC) 新增為來源

  1. 在 [網狀架構即時智慧] 中,選取 [Eventstream ] 以建立新的事件串流。 請確定 [增強功能][預覽] 選項已啟用。

    建立新 Eventstream 的螢幕快照。

  2. 在下一個畫面上,選取 [ 新增外部來源]。

    選取 [新增外部來源] 的螢幕快照。

設定並連線到 Azure MySQL DB (CDC)

  1. 在 [ 選取數據源] 畫面上,選取 [Azure MySQL DB [CDC] 作為數據源。

    選取 Azure MySQL DB (CDC) 的螢幕快照。

  2. 在 [連線] 畫面的 [連線] 底下,選取 [新增連線] 以建立雲端連線。

  3. 輸入下列 Azure MySQL DB 的 [連線設定 ] 和 [連線認證 ],然後選取 [ 連線]。

    • 伺服器:適用於 MySQL 的 Azure 資料庫 資料庫的伺服器位址,例如 my-mysql-server.mysql.database.azure.com
    • 資料庫: 資料庫名稱,例如 my_database
    • 線上名稱:自動產生,或者您可以輸入此連線的新名稱。
    • 使用者名稱和密碼:輸入 適用於 MySQL 的 Azure 資料庫 資料庫的認證。 請確定您輸入 伺服器管理員帳戶以授與必要許可權所建立的用戶帳戶。

    Azure MySQL DB (CDC) 連線設定的螢幕快照。

  4. 輸入下列資訊來設定 Azure MySQL DB CDC 數據源,然後選取 [ 下一步]。

    • Table(s):輸入以逗號分隔的數據表名稱清單。 每個數據表名稱都必須遵循 格式 <database name>.<table name>,例如 my_database.users
    • 伺服器標識碼:輸入 MySQL 叢集中每個伺服器和復寫用戶端的唯一值。 預設值為 1000。
    • 埠:保留預設值不變。

    針對 Azure MySQL DB (CDC) 連線選取 [資料表]、[伺服器識別符] 和 [埠] 的螢幕快照。

    注意

    為每個讀取器設定不同的伺服器識別碼。 讀取 binlog 的每個 MySQL 資料庫用戶端都應該有唯一標識碼,稱為伺服器識別碼。 MySQL 伺服器會使用此標識符來維護網路連線和 binlog 位置。 共用相同伺服器識別碼的不同作業可能會導致從錯誤的 binlog 位置讀取。 因此,建議為每個讀取器設定不同的伺服器標識符。

  5. 檢閱 Azure MySQL DB CDC 來源的摘要之後,選取 [ 新增 ] 以完成設定。

您會看到 Azure MySQL DB (CDC) 來源以編輯模式新增至您的事件串流

[編輯] 模式中已新增 Azure MySQL DB CDC 來源的螢幕快照,其中已醒目提示 [發佈] 按鈕。

選取 [發佈 ] 以發佈變更,並開始將 Azure MySQL DB CDC 數據串流至事件串流。

實時檢視中已發行事件數據流與 Azure MySQL DB CDC 來源的螢幕快照。

其他連接器: