在简单的主my.cnf从设置中,在->设置中有以下值:
# MASTER my.cnf:
server-id = 1
log_bin = /var/log/mysql/mysql-bin.log
binlog_format=ROW
binlog_do_db = db2
max_binlog_cache_size = 2G
binlog_cache_size = 32K
max_binlog_stmt_cache_size = 2G
binlog_stmt_cache_size = 32K
max_binlog_size = 100M
expire_logs_days=3
# SLAVE my.cnf
server-id = 2
log_bin = /var/log/mysql/mysql-bin.log
relay-log = /var/log/mysql/mysql-relay-bin.log
binlog_format=ROW
replicate-wild-do-table=db2.%
max_binlog_cache_size = 2G
binlog_cache_size = 32K
max_binlog_stmt_cache_size = 2G
binlog_stmt_cache_size = 32K
max_binlog_size = 100M
expire_logs_days=3MySQL文档声明,在基于行的复制中,USE数据库将被忽略,并且只考虑更改的数据库。然而,我注意到了以下行为:
USE db1;
CREATE TABLE db2.Fake (field1 int,field2 int);这不会被复制到奴隶身上。
当我将使用更改为db2时,复制工作。我是不是漏掉了什么?
发布于 2017-09-02 00:58:33
Am I missing something here ?当然,上面几行:
例如,像CREATE和ALTER这样的DDL语句总是记录为语句,而不考虑实际的日志记录格式,因此以下基于语句的--binlog-do-db规则总是适用于确定语句是否被记录。
https://dba.stackexchange.com/questions/184915
复制相似问题