一、MYSQL主从同步
注意:进行主从同步操作时需要确保DB无写操作
flush tables with read lock; //全局读锁定,执行了命令之后所有库所有表都被锁定只读.
1、在主机上
1)从主机上导出DB,直接在bash命令行用
mysqldump -uroot -p cmsdb>cms.sql
2)进入mysql后用
show master status; //记录下日志文件名和偏移量
3)将cms.sql复制到备机下
2、在备机下
1)在备机上导入DB,直接在bash命令行用
mysql -uroot -p cmsdb<cms.sql
2)进入mysql后
stop slave;
3)change master to master_host='10.2.213.91',master_user='rep',master_password='Repli23+',master_log_file='mysqld-bin.000039',master_log_pos=219005520;
Master_Log_File与Master_Log_Pos 这2个参数是与上面主机上面查看到的日志文件名与偏移量是一样的
4)start slave;
3、按照上面的步骤做完,执行下面的命令查看slave的状态
mysql>show slave statusG;
4、解禁写操作
unlock tables;
二、主主同步
1.主备mysql上分别查看master log信息:
show master status;
2.主备mysql上分别执行:
>stop slave;
>CHANGE MASTER TO MASTER_HOST='172.16.199.149', MASTER_USER='rep', MASTER_PASSWORD='Repli23+', MASTER_LOG_FILE='mysql-bin.000002', MASTER_LOG_POS=689028;
//MASTER_HOST填写Master mysql所在服务器IP
//MASTER_LOG_FILE填写Master mysql上的File信息
//MASTER_LOG_POS填写Master mysql上的Position信息
>start slave;
3. 检查mysql主主运行情况
主备mysql分别执行show slave statusG(查看slave运行情况)
Slave_IO_Running: YES(运行ok)
Slave_SQL_Running: YES (运行ok)
Master_Log_File: mysql-bin.000010(与 Master log File一致)
Read_Master_Log_Pos: 120 (与Master log pos一致)