Mysql

Percona XtraDB 集群和 MySQL 複製

  • June 8, 2013

我已經使用 percona xtradb 集群設置了一個 3 節點多主複製,它執行良好。

現在我嘗試像往常一樣添加一些設置複製的只讀從站,但似乎 binlog 不包含新插入,

我在數據庫的主伺服器上設置了 binlog_do_db,從伺服器說日誌位置與主數據庫相同,但新數據不存在。

有沒有一種特殊的方法可以在 xtradb 集群上進行複制?

似乎 binlog 不包括新的插入

我不確定您是否說 binlog 實際上不包含它們,並且您已經用 確認了這一點mysqlbinlog,或者它“似乎”沒有,因為它們不會複製。

PXC需要 log_slave_updates在作為非同步從屬節點的主節點上打開,否則,並非所有內容都會寫入主節點的二進制日誌。這與作為主伺服器的普通 MySQL 伺服器非常不同,後者log_slave_updates根本不做任何事情(除非主伺服器實際上是另一個主伺服器的從伺服器)。

如果不是這樣,請從您的配置中刪除replicate_do_dbbinlog_do_db及其所有相關選項,然後將它們從您的大腦中刪除。除非您在睡眠中確切知道它們是如何工作的,否則永遠不應添加它們。最簡單且迄今為止最可靠的複製配置是並且將永遠是複制所有內容,這是預設設置。

binlog_format了奴隸。除非從屬伺服器本身俱有其他從屬伺服器,否則它絕對ROW沒有區別……如果主伺服器使用格式,如果您確實配置了從屬伺服器,則從屬伺服器仍將登錄格式。此外,除非在從站上啟用, ROW否則從站的二進制日誌(不要與中繼日誌混淆)不會記錄從上游主站接收到的語句。log_slave_updates

同樣的事情也適用innodb_flush_log_at_trx_commit。它不會影響實際複製。這是一個決定 ACID 合規性和性能之間權衡的設置。

引用自:https://dba.stackexchange.com/questions/44070