Mysql

MySQL 複製 A->B->C

  • January 27, 2013

我正在為 master -> slave/master -> slave 設置 MySQL 複製,並為 master -> slave 設置複製,但當我在 my.cnf 中啟用此選項時

log-slave-updates=1

為了更新主 bin 日誌,我的複制開始變慢並且時間

Seconds_Behind_Master

在成長。

我使用 innodb 引擎,但數據庫很大。知道如何改進複製,看起來網路不是問題。我也想用

binlog_format=ROW

但是master正在使用複制’statement’的預設設置,我無法重置master;)

謝謝 …

嘗試找出瓶頸是什麼

  • 是從機的cpu限制嗎

$$ mysql replication in 5.1 and 5.5 is single threaded, it’ll use just once core $$. 如果是 - 考慮在從屬主機上放置更快的 CPU。

  • 它是主機上的 io 子系統嗎?如果是這樣 - 考慮更多的主軸、ssd 或可能在回寫模式下具有更大 bbu 記憶體的 raid 卡以“吸收”寫入峰值

您可能還想尋找“在

$$ mysql $$box’ 解決方案,如鎢複製器

你真的有 3 個 master 的非同步複製嗎?這是一個非常糟糕的主意。如果您失去了一個節點,您剩餘的節點將變得越來越不同步。

我也想用…binlog_format=ROW

這取決於您的查詢是什麼樣的,它可能會有所幫助,但 MIXED 模式可能是更好的解決方案。

我使用 innodb 引擎,但數據庫很大。

如果您的數據庫大小正在影響複製性能,那麼您顯然有很大的空間可以通過模式更改和查詢調整來提高性能。

但是主伺服器正在使用複制“語句”的預設設置,我無法重置主伺服器

為什麼不?

引用自:https://serverfault.com/questions/457327