文件首頁
MySQL 8.4 參考手冊
相關文件 下載本手冊
PDF (美國信紙) - 39.9Mb
PDF (A4) - 40.0Mb
Man Pages (TGZ) - 258.5Kb
Man Pages (Zip) - 365.5Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


19.1.2.1 設定複製來源組態

若要設定來源以使用基於二進制日誌檔案位置的複製,您必須確保已啟用二進制日誌記錄,並建立唯一的伺服器 ID。

複製拓樸中的每個伺服器都必須使用唯一的伺服器 ID 進行設定,您可以使用 server_id 系統變數指定此 ID。此伺服器 ID 用於識別複製拓樸中的個別伺服器,且必須是介於 1 和 (232)−1 之間的正整數。預設的 server_id 值為 1;您可以在執行階段發出如下的陳述式來變更此值

SET GLOBAL server_id = 2;

伺服器 ID 的組織和選取是任意的,只要每個伺服器 ID 與複製拓樸中任何其他伺服器使用的每個伺服器 ID 不同即可。請注意,如果先前為伺服器 ID 設定了值 0,您必須重新啟動伺服器,才能使用新的非零伺服器 ID 初始化來源。否則,當您變更伺服器 ID 時,不需要重新啟動伺服器,除非您進行其他需要重新啟動的組態變更。

來源上必須啟用二進制日誌記錄,因為二進制日誌是將變更從來源複製到其副本的基礎。二進制日誌記錄預設為啟用 (系統變數 log_bin 設定為 ON)。--log-bin 選項會告知伺服器二進制日誌檔案要使用的基礎名稱。建議您指定此選項,為二進制日誌檔案提供非預設的基礎名稱,這樣如果主機名稱變更,您可以輕鬆地繼續使用相同的二進制日誌檔案名稱 (請參閱 第 B.3.7 節「MySQL 中的已知問題」)。如果先前使用 --skip-log-bin 選項在來源上停用了二進制日誌記錄,您必須重新啟動伺服器,並且不使用此選項才能啟用它。

注意

下列選項也會對來源端造成影響

  • 為了在使用 InnoDB 並搭配交易的複製設定中,獲得最大的耐用性和一致性,您應該在來源端的 my.cnf 檔案中使用 innodb_flush_log_at_trx_commit=1sync_binlog=1

  • 請確保來源端未啟用 skip_networking 系統變數。如果已停用網路功能,複本將無法與來源端通信,導致複製失敗。