主主原文链接:http://blog.csdn.net/xyang81/article/details/52562571
多实例原文链接:https://blog.csdn.net/leshami/article/details/40339167
不同服务器间主从复制
主:192.168.2.60
从:192.168.2.71
主库配置文件相关
log-bin=mysql-bin 主库配置开启binlog日志
server-id=1 主库设置id
binlog-do-db=db_name1,db_name2.... 需要同步的库,没有这条同步所有库
binlog-ignore-db 二进制日志中忽略数据库 binlog-ignore-db = mysql 保证两个库不同的权限
从库配置文件相关
replicate-do-db 设定需要复制的数据库(多数据库使用逗号,隔开)
replicate-ignore-db 设定需要忽略的复制数据库 (多数据库使用逗号,隔开)
replicate-do-table 设定需要复制的表
replicate-ignore-table 设定需要忽略的复制表
replicate-wild-do-table 同replication-do-table功能一样,但是可以通配符
replicate-wild-ignore-table 同replication-ignore-table功能一样,但是可以加通配符
主服务器其他操作
grant replication slave on *.* to 'slavecopy'@'192.168.2.71' identified by '123456'; 主服务器建授权用户
flush tables with read lock; 锁表操作执行后另开终端进行其他操作
show master status;查询主服务器当前二进制日志名和偏移量
mysqldump -uroot -p test_1 > bak.sql 备份主服务器库
备份完成后恢复写操作
从服务器其他操作
mysqld_safe --skip-slave-start & 不会立即启动同步
change master to master_host='192.168.2.60', master_user='slavecopy',master_password='123456',
master_log_file='mysql-bin.000005', master_log_pos=106; 从服务器端配置主服务器信息
start slave;开启同步
主服务器创建表
查看从服务器
mysql主要复制启动项
log-slave-updates 此配置来设置从服务器变更是否写入binlog日志,当从服务器为其他服务器的主服务器时开启
master-connect-retry 此配置来设置和和主服务器连接丢失时重试的时间间隔,默认60秒
read-only 用来限制普通用户对从数据库的更新操作,确保数据库的安全性,默认情况下主数据库的普通用户可以对从数据库操作
slave-skip-errors 从数据库可能会执行binlog日志中错误的sql语句,如果不忽略错误从服务器将停止复制,默认设置此参数跳过所有错误的sql语句