mysql主从复制指定库和表
mysql主从复制,指定库和表
服务器:centos 7.1
mysql版本: Master->MariaDb 5.5
Slave->Mysql 5.7
一. Master数据库
1.修改配置文件--/etc/my.cnf:
server-id = 117
## 开启二进制日志功能,可以随便取,最好有含义(关键就是这里了)
log-bin=mysql-bin
## 主从复制的格式(mixed,statement,row,默认格式是statement)
binlog_format=mixed
#指定复制的数据库
binlog-do-db = xwzn_sso
2.配置完成后重启 mysql:
service mysqld restart;
3.建数据同步用户:
CREATE USER 'slave'@'%' IDENTIFIED BY '123456';
GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'slave'@'%';
二. Slave数据库
1.修改配置文件--my.cnf:
server_id=119
#指定要复制的数据库
replicate-rewrite-db= xwzn_sso->pz_qiming
#指定要复制的表
replicate-do-table = pz_qiming.xwzn_sso_app_user
replicate-do-table = pz_qiming.xwzn_sso_qq_user_info
replicate-do-table = pz_qiming.xwzn_sso_wechat_user_info
replicate-do-table = pz_qiming.xwzn_sso_weibo_user_info
## 开启二进制日志功能,以备Slave作为其它Slave的Master时使用
log-bin=mysql-slave1-bin
binlog_format=mixed
## relay_log配置中继日志
relay_log=edu-mysql-relay-bin
## log_slave_updates表示slave将复制事件写进自己的二进制日志
log_slave_updates=1
2.重启mysql
三. 完成Master和Slave链接
1.进入master,执行:
show master status;
2.然后到 Slave 中进入 mysql,执行命令:
change master to master_host='10.0.100.171', master_user='slave', master_password='123456',
master_port=3306, master_log_file='mysql-bin.000001', master_log_pos=929,
master_connect_retry=30;
#master_log_file即上图的File字段
#master_log_pos即上图的Position字段
3.在 Slave 的 MySQL 终端执行查看主从同步状态:
show slave status \G;
4.开始开启主从同步:
start slave;
SlaveIORunning 和 SlaveSQLRunning 是Yes表明已经开始工作了
mysql主从复制指定库和表相关教程