Mysql主从同步配置
linux下:my.cnf
Windows:env.ini
1. 配置主库,修改主库的cnf
#配置主从数据库
server-id=1
#主从复制是通过二进制文件来进行,所以要开启日志功能
log-bin=mysql-bin
#主机,读写都可以
read-only=0
#需要备份数据,多个写多行
binlog-do-db=szkitil
#不需要备份的数据库,多个写多行
binlog-ignore-db=test
binlog-ignore-db=mysql
2. 配置从库,修改从库的cnf
#从库配置
server-id=2
log-bin=mysql-bin
#如果从服务器发现主服务器断掉,重新连接的时间差(秒),在mysql5.6下无效可注释
master-connect-retry=60
#只复制某个库
replicate-do-db=szkitil
#不复制某个库
replicate-ignore-db=mysql
3. 重启动主库和从库(在此之前必须保证要同步的2个数据库的数据库文件一致);
4.在海豚或者MSSQL里面执行下面语句查看主库状态
mysql> show master status
5. 在海豚或者MSSQL里面执行下面语句设置从库日志起点
mysql> change master to master_host=‘127.0.0.1’,master_user=‘backup’,master_password=’******’,master_log_file=‘mysql-bin.000001’,master_log_pos=106,port=3306;
其中master_log_file和master_log_pos通过在主数据库show master status;得到。
6.启动从库复制
mysql>start slave ;
7.其他从库操作指令
停止:
mysl>stop slave ;
查看复制状态:
mysql>show slave status
主库重新写日志:
mysql>RESET MASTER; 语句可以删除所有的二进制日志;删除所有的二进制日志后,Mysql将会重新创建新的二进制日志。新二进制日志的编号从000001开始。
查看主从是否同步,主要查看主从两个库的状态是否一致:
主库执行:show master status
从库执行:show slave status
对比两个库执行出来的结果是否一致