跳到主要內容 跳至補充內容

必要條件

在您可以登陸或複寫資料之前,確認完成下列先決條件:

  • 在 Data Movement 閘道伺服器安裝必要 driver

  • 在資料來源授予必要權限

  • 設定資料來源連接器

受支援的版本

受支援的 MySQL 版本如下:

  • MySQL 社區版
  • MySQL 標準版
  • MySQL 企業版
  • MySQL Cluster Carrier Grade 版

驅動程式的設定

您可以使用驅動程式安裝公用程式 (建議) 或手動安裝 driver。只能在不太可能發生的事件 (您在使用驅動程式安裝公用程式時遇到問題) 中嘗試手動安裝。

使用驅動程式安裝公用程式來安裝驅動程式

此區段描述如何安裝所需的 driver。該流程涉及執行將會自動下載、安裝並設定所需 driver 的指令碼。您也可以執行指令碼,以根據需求更新並解除安裝 driver

準備安裝

  • 確認 Python 3.6 或更高版本安裝於 資料移動 閘道伺服器。

    Python 會預先安裝在大部分的 Linux 發行版。您可以執行下列命令,以查看哪個 Python 版本安裝在您的系統上:

    python3 --version

安裝 driver

若要下載並安裝 driver

  1. 資料移動 閘道機器上,將工作目錄變更為:

    opt/qlik/gateway/movement/drivers/bin

  2. 執行下列命令:

    語法:

    ./install mysql

    若無法下載 driver (由於存取限制或技術問題),將會顯示訊息,指示您到哪裡下載 driver 以及在 資料移動 閘道機器上的何處複製。完成後,再次執行 install mysql 命令。

    否則,就會顯示 driver 的 EULA。

  3. 執行下列其中一個動作:

    • 重複按下 [Enter] 以緩慢瀏覽 EULA。
    • 重複按下空格鍵以快速瀏覽 EULA。
    • 按下 q 以結束授權文字並呈現 EULA 接受選項。
  4. 執行下列其中一個動作:

    • 輸入「y」並按下 [Enter] 以接受 EULA 並開始安裝。
    • 輸入「n」並按下 [Enter] 以拒絕 EULA 並退出安裝。
    • 輸入「v」並按下 [Enter] 以再次檢視 EULA。

  5. 將會安裝 driver

更新 driver

若您想要在安裝提供的 driver 之前解除安裝先前的 driver 版本,請執行更新命令。

若要下載並更新 driver

  1. 資料移動 閘道機器上,將工作目錄變更為:

    opt/qlik/gateway/movement/drivers/bin

  2. 執行下列命令:

    語法:

    ./update mysql

    若無法下載 driver (由於存取限制或技術問題),將會顯示訊息,指示您到哪裡下載 driver 以及在 資料移動 閘道機器上的何處複製。完成後,再次執行 update mysql 命令。

    否則,就會顯示 driver 的 EULA。

  3. 執行下列其中一個動作:

    • 重複按下 [Enter] 以緩慢瀏覽 EULA。
    • 重複按下空格鍵以快速瀏覽 EULA。
    • 按下 q 以結束授權文字並呈現 EULA 接受選項。
  4. 執行下列其中一個動作:

    • 輸入「y」並按下 [Enter] 以接受 EULA 並開始安裝。
    • 輸入「n」並按下 [Enter] 以拒絕 EULA 並退出安裝。
    • 輸入「v」並按下 [Enter] 以從頭檢閱 EULA。
  5. 將會解除安裝舊版 driver,並安裝新版 driver

解除安裝 driver

若您想要解除安裝 driver,請執行解除安裝命令。

若要解除安裝 driver

  1. 停止設定為使用此連接器的所有任務。

  2. 資料移動 閘道機器上,將工作目錄變更為:

    opt/qlik/gateway/movement/drivers/bin

  3. 執行下列命令:

    語法:

    ./uninstall mysql

    將會解除安裝 driver

手動安裝驅動程式

只有在自動驅動程式安裝無法成功完成時,才能嘗試手動安裝 driver

安裝 資料移動閘道 後,下載 mysql-connector-odbc-<version>.x86_64.rpm 驅動程式。您可以在 /opt/qlik/gateway/movement/drivers/manifests/mysql.yamlbinary-artifacts 之下找到支援版本的直接下載連結。下載完成後,將 RPM 複製到 資料移動閘道 機器。

資料移動閘道 伺服器上,開啟 shell prompt 並進行以下項目:

  1. 停止 資料移動閘道 服務:

    sudo systemctl stop repagent

  2. 可自選,確認服務已停止:

    sudo systemctl status repagent

    狀態應如下所示:

    Active: inactive (dead) since <timestamp> ago

  3. 將驅動程式安裝在 資料移動閘道 機器。
  4. 變更任務目錄至 <資料移動閘道-Install-Dir>/bin

  5. 複製驅動程式位置至 site_arep_login.sh 檔案:

    echo "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/usr/lib64" >> site_arep_login.sh

    這將新增驅動程式至「LD_LIBRARY_PATH」並更新位於 site_arep_login.sh 檔案的驅動程式位置。

  6. 可自選,確認已複製驅動程式位置:

    cat site_arep_login.sh
  7. 確定 /etc/odbcinst.ini 檔案含有 MySQL 的項目,如以下範例所示:

    [MySQL ODBC 8.0 Unicode Driver]

    Driver = /usr/lib64/libmyodbc8w.so

    UsageCount = 1

  8. 開始 資料移動閘道 服務:

    sudo systemctl start repagent

  9. 可自行選擇確認服務已開始:

    sudo systemctl status repagent

    狀態應如下所示:

    Active: active (running) since <timestamp> ago

連接埠

依照預設值,在 資料移動閘道 伺服器上需開啟連接埠 3306 才能進行傳出通訊。您可在連接器設定中變更此資訊。

一般必要條件

確保已符合以下先決條件:

  • 必要權限 的 MySQL 帳號。
  • MySQL 8:擷取變更的標準驗證
  • 認證 MySQL 版本支援暫時檔案類型(MySQL 5.6 引入)的分數值。因此,不再支援舊暫時檔案類型格式的 登陸

    資訊備註請注意,升級至支援暫時檔案類型分數值的 MySQL 版本不會自動升級暫時檔案類型格式。必須分開進行。這也適用從 MariaDB 10.1 升級的情況。針對升級暫時檔案類型格式的說明,請參閱廠商線上說明。

從客戶安裝的 MySQL 資料庫擷取變更

下一節說明從內部部署 MySQL 資料庫擷取變更的必要條件。

啟用 binary 記錄

要啟用 binary 登入(CDC 登陸 必須),以下參數必須組態於 MySQL’s my.ini (Windows) 或 my.cnf (UNIX) 檔案。

Binary 登入參數
參數

server_id

任何從 1 開始的值

範例:

server_id=1

log-bin=<path>

到 binary 記錄檔按(無延伸)的路徑

範例:

log-bin=E:\MySql_Logs\BinLog

binlog_format

必須為:

binlog_format=row

expire_logs_days

為了預防磁碟空間問題,強烈建議不要使用預設值 (0)。

範例:

expire_logs_days=5

binlog_row_image

必須為:

binlog_row_image=full

叢集必要條件

登陸 叢集 (NDB) 表格 (透過連結至任何叢結點),以下參數必須組態於 MySQL’s my.ini (Windows) 或 my.cnf (UNIX) 檔案。

資訊備註

使用 Percona 作為來源時,不需要進行此區段說明的程序。

叢集參數
參數

ndb_log_bin

必須為:

ndb_log_bin=on

確保叢集表格變更會被記錄至 binary 記錄中。

ndb_log_update_as_write

必須為:

ndb_log_update_as_write=OFF

預防更新在 binary 記錄中被寫成插入。

ndb_log_updated_only

必須為:

ndb_log_updated_only=OFF

確保 binary 記錄會包含整列而不只是已變更的欄。

從 Google Cloud for MySQL 擷取變更

Binary 記錄

要擷取變更必須使用 binary 登入。要檢查是否啟用 binary 登入(預設),請確定資料庫的 binlog_row_image 參數設定 完整.

複寫

複製讓主資料庫伺服器的資料能夠複製到一個或更多次要伺服器。

能從主要或次要伺服器登陸資料。

要自是要伺服器擷取變更,binary 記錄參數 log_slave_updates 必須設定為 true (1).

進一步閱讀:https://cloud.google.com/sql/docs/mysql/replication

從 Amazon RDS for MySQL 和 Amazon Aurora for MySQL 擷取變更

Binary 記錄

若要為 MySQL 設定 Amazon RDS 或為 CDC 的 MySQL 設定 Amazon Aurora:

  1. 按照 AWS 說明中的說明建立新的參數群組 (請參閱二進位記錄格式區段)。

  2. 建立新的參數群組時,設定: binlog_format=row

  3. 儲存新的參數群組。
  4. 若您有 MySQL 之 Amazon RDS 的現有執行個體,編輯該執行個體以使用上述步驟 2 中指定的參數。若您正在佈建 MySQL 之 Amazon RDS 的新執行個體,參考上述步驟 1 中建立的新參數群組。
  5. 最後,確認啟用自動備份 (預設情況)。

進一步閱讀:https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.MySQL.BinaryFormat.html

複寫

複製讓主資料庫伺服器的資料能夠複製到一個或更多次要伺服器。

能從主要或次要伺服器登陸資料。

要自是要伺服器擷取變更,binary 記錄參數 log_slave_updates 必須設定為 true (1).

進一步閱讀:https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_MySQL.Replication.html

從適用於 MySQL 的 Microsoft Azure 資料庫擷取變更

要擷取變更必須使用 binary 登入。要檢查是否啟用 binary 登入(預設),請確定資料庫的 binlog_row_image 參數設定 完整.

此頁面是否對您有幫助?

若您發現此頁面或其內容有任何問題——錯字、遺漏步驟或技術錯誤——請告知我們可以如何改善!