mysql 主从同步失败后


环境:

centos6.4

mysql5.1

主:mysql1

从:mysql2


在mysql1上:


1.1.先锁表,避免在重新设置同步的这段时间内有新的数据写入。

flush tables with read lock; 


1.2.备份数据库

mysqldump -u root -p data1 > data1.sql


1.3. 把备份的数据库传到mysql2上去


1.4.删除原来的日志文件

cd /var/lib/mysql

mv master-bin-0000* /backup    //移动别处

vim master-bin-index     //删除里面的内容


1.5.重启mysql服务后,再锁表

service mysqld restart

flush tables with read lock;

show master status;    //得到的信息在从服务器上配置同步


2. 在mysql2上:


2.1. 导入数据库data1.sql

mysql -u root -p data1 < data1.sql    //此处,data1数据库需存在的


2.2. 删除原来的日志文件

cd /var/lib/mysql

mv master-bin-0000* /backup    //移动别处

vim master-bin-index     //删除里面的内容


2.3.设置重新同步


2.3.1.停止从库

mysql> slave stop;


2.3.2.连接主库

mysql>change master to master_host='192.168.1.1', master_user='slaveuser', master_password='redhat', master_log_file='mysql-bin.000001',master_log_pos=352; 

//如果2.3.2执行成功,执行2.3.4,否则,先执行2.3.3,再执行2.3.4

2.3.3.重置从库

mysql> reset slave;

2.3.4.启动从库

mysql> slave start;


2.3.4.查看同步状态

mysql> show slave status\G;

//如果没有报错,说明重新同步成功





你可能感兴趣的:(mysql)