MySQL复制,replicate-ignore-db模式下 如何正常同步
2015-04-02 11:22
621 查看
在复制中,如果启用参数 replicate-ignore-db / replicate-do-db 后想要让复制正常运行,只需在连接数据库后不执行 "use db" 语句即可,如果是在php中,连接数据库后,不再执行 mysql_select_db() 即可。这是因为复制机制会判断是否使用了 replicate-do(ignore)-db 参数,然后判断当前数据库是否为指定的数据库,如果是,才执行相应的binlog,否则略过。如果不指定数据库的话,就可以忽略这个环节了。(by yejr)
做个试验:
我的主配置如下:
server-id = 1
binlog-do-db=sakila
binlog-do-db=community
binlog-ignore-db=mysql
我的从配置如下:
read-only
server-id=2
master-host=192.168.216.132
master-user=slave
master-password=slave
master-port=3306
replicate-do-db=sakila
replicate-do-db=community
---------------------------------
主从都有 test库和mysql库,mysql库是被ignore的,test库并没有定义do还是ignore。现在这两种情况都试一下。
主库上执行:(没有用use mysql)
mysql> create table mysql.aaaa (a date not null);
Query OK, 0 rows affected (0.01 sec)
丛库上查看:(mysql里创建了aaaa表)
mysql> desc mysql.aaaa;
+-------+------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+------+------+-----+---------+-------+
| a | date | NO | | NULL | |
+-------+------+------+-----+---------+-------+
1 row in set (0.00 sec)
同理在test库也一样执行了复制操作。
整理自网络
做个试验:
我的主配置如下:
server-id = 1
binlog-do-db=sakila
binlog-do-db=community
binlog-ignore-db=mysql
我的从配置如下:
read-only
server-id=2
master-host=192.168.216.132
master-user=slave
master-password=slave
master-port=3306
replicate-do-db=sakila
replicate-do-db=community
---------------------------------
主从都有 test库和mysql库,mysql库是被ignore的,test库并没有定义do还是ignore。现在这两种情况都试一下。
主库上执行:(没有用use mysql)
mysql> create table mysql.aaaa (a date not null);
Query OK, 0 rows affected (0.01 sec)
丛库上查看:(mysql里创建了aaaa表)
mysql> desc mysql.aaaa;
+-------+------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+------+------+-----+---------+-------+
| a | date | NO | | NULL | |
+-------+------+------+-----+---------+-------+
1 row in set (0.00 sec)
同理在test库也一样执行了复制操作。
整理自网络
相关文章推荐
- 设置MySQL复制时,replicate-ignore-db模式下如何正常工作
- 设置MySQL复制时,replicate-ignore-db模式下如何正常工作
- 设置MySQL复制时,replicate-ignore-db模式下如何正常工作
- mysql同步复制M-M(master master)模式
- Mysql半同步复制模式
- binlog_ignore_db引起的同步复制故障
- 记1次未正确设置replicate-ignore-db参数导致MySQL主从同步异常的问题
- MySQL5.6 GTID模式,同步复制报错不能跳过解决方法
- 做Mysql主从同步过滤时,应使用replicate_wild_do_table和replicate_wild_ignore_table参数
- mysql同步复制M-M(master master)模式
- MySQL 半同步复制模式的实现 推荐
- mysql同步复制M-M(master master)模式
- mysql主从复制 设置中继日志自动清除 主从同步失败,如何快速同步
- mysql主从复制显示正常,数据没同步现象。
- MySQL5.6基于GTID同步复制,与如何实现MySQL负载均衡、读写分离。
- mysql跨库复制: replicate_wild_do_table和replicate-wild-ignore-table
- 如何实现mysql主从服务器的半同步复制
- mysql 5.6在gtid复制模式下复制错误,如何跳过??
- mysql跨库复制: replicate_wild_do_table和replicate-wild-ignore-table
- MySQL5.6 GTID模式 同步复制跳过报错解决方法