六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 91|回复: 0

MYSQL 主从库同步 异常处理汇总

[复制链接]

升级  50%

33

主题

33

主题

33

主题

秀才

Rank: 2

积分
125
 楼主| 发表于 2013-2-5 09:09:54 | 显示全部楼层 |阅读模式
经常处理MYSQL的主从库同步异常,现在做个总结。
主从库同步失效的原因各种各样,一般都是在从库上不小心执行了写操作,也有可能从库服务器意外重启等等。
进入从库执行show slave status\G看到下面两行:
Slave_IO_Running:Yes
Slave_SQL_Running:Yes
任意一个不为yes就说明同步出了问题。
基本上解决的办法无外乎这么几种:
1.如果是事务回滚造成的那么可以尝试:
mysql> slave stop;
mysql> set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
mysql> slave start;
2.如果上面的方法没有作用,那么基本上下面的方法一定奏效:
①主库操作:
flush tables with read lock; //主库上锁表

show master status; //记录 master log file及file position
比如:
+--------------------------+----------------+-------------------+------------------------+
| File  | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+--------------------------+----------------+--------------------+-----------------------+
| xxxx-log.000001 | 156        | xxxx  |  |
+--------------------------+----------------+--------------------+-----------------------+

$tar -cvf database.tar ./data //备份数据文件

unlock tables; //解锁主库表
②从库操作
将主库数据库文件copy到从库中
启动从库
stop slave;
reset slave;
change master to master_host='主库IP',master_user='用户名',master_password='密码',master_port=端口,master_log_file='xxxx-log.000001',master_log_pos=156;
start slave;

//然后登陆从库
show slave status\G;
Slave_IO_Running:Yes
Slave_SQL_Running:Yes
上面2项都为'Yes',表示slave正常
有关主从库更详细的内容可以参见:http://blog.csdn.net/shootyou/archive/2010/11/22/6027007.aspx
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表