文件首頁
MySQL 9.0 參考手冊
相關文件 下載本手冊
PDF (US Ltr) - 40.0Mb
PDF (A4) - 40.1Mb
Man Pages (TGZ) - 258.2Kb
Man Pages (Zip) - 365.3Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


19.1.2.1 設定複製來源組態

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

複製拓撲中的每個伺服器都必須設定唯一的伺服器 ID,您可以使用 server_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 系統變數。如果已停用網路,複本將無法與來源通訊,且複製會失敗。