簡體   English   中英

MySQL復制:如果我沒有指定任何數據庫,log_bin會記錄一切嗎?

[英]MySQL replication: if I don't specify any databases, will log_bin log EVERYTHING?

我正在為運行一堆數據庫(每個客戶端一個)的服務器設置復制,並計划在my.cnf上一直添加更多數據庫,而不是:

binlog-do-db  = databasename 1
binlog-do-db  = databasename 2
binlog-do-db  = databasename 3
...
binlog-do-db  = databasename n

我可以寧可擁有

binlog-ignore-db  = mysql
binlog-ignore-db  = informationschema

(並且沒有指定日志的數據庫)並假設其他所有內容都已記錄?

編輯:實際上,如果我刪除所有binlog-do-db條目,它似乎記錄了所有內容(正如您在移動數據庫時看到的二進制日志文件更改位置),但在從屬服務器上,沒有任何東西被拾取! (也許,這是使用replicate-do-db的情況?這會破壞這個想法;我想我不能讓MySQL自動檢測要復制的數據庫)。

這看起來是正確的: http//dev.mysql.com/doc/refman/5.0/en/binary-log.html#option_mysqld_binlog-ignore-db

根據該參考:

有一些--binlog-ignore-db規則。 默認數據庫是否與--binlog-ignore-db規則匹配?

  • 是:不要寫聲明,然后退出。
  • 否:編寫查詢並退出。

由於您只有ignore命令,因此只要默認(活動)數據庫與其中一個被忽略的數據庫不匹配,所有查詢都將寫入日志。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM