代码驿站移动版
频道导航
HTML/Xhtml
CSS
JavaScript
HTML5
PHP教程
ASP.NET
正则表达式
AJAX
ThinkPHP
Yii
MySQL
MariaDB
Oracle
MongoDB
Redis
DedeCMS
PHPCMS
帝国CMS
WordPress
Discuz
其它CMS
Zend Studio
Sublime
Notepad
Dreamweaver
Windows
Linux
Nginx
Apache
IIS
CentOS
Ubuntu
Debian
网站优化
工具资源
PHP源码
ASP.NET源码
其它源码
图标素材
按钮素材
字体素材
DedeCMS模板
帝国CMS模板
PHPCMS模板
WordPress模板
Discuz!模板
单页模板
开发软件下载
服务器软件下载
广告投放
联系我们
版权申明
软件编程
网页前端
移动开发
数据库
服务器
脚本语言
PHP代码
JAVA代码
Python代码
Android代码
当前位置:
主页
>
数据库
>
Mysql
>
MYSQL主从库不同步故障一例解决方法
时间:2021-03-04 13:53:39 | 栏目:
Mysql
| 点击:次
于是:
1、在主库中创建一个临时库,将需要导入的表文件复制过来
2、执行
create database tmpdb;
create table tmptable;
cp mysql_date_file master_data_file //shell command 复制数据表文件到master data_dir下
insert into master.tmptable select * from tmpdb.tmptable;
执行完后,主库中数据导入正常
再看slave status
show slave status;
发现错误:not found tmpdb.tmptable (大致意思是这个,原来的错误信息没有记录下来)
匆忙中,看show master status 中Master_Log_Pos 标记为$Master_Log_Pos
然后在slave 上 CHANGE MASTER TO MASTER_LOG_POS=$Master_Log_Pos
然后再看show master status,发现有1162错误
到现在发现两边的数据不能同步了
。。。。。。
冥思苦想,不会重新做一遍主从库吧?
mysqlbinlog 我突然想到了它
于是mysqlbinlog --start-position=190000000 --stop-position=200000000 xxx.binlog|grep tmptable
找到了在slave上执行错误的SQL
mysqlbinlog --start-position=190000000 --stop-position=200000000 xxx.binlog|grep tmptable > /tmp/tmpbinlog
vi /tmp/tmpbinlog (find tmptable)
找到错误SQL的下一个# at (一串数字)标记为$NEXT_POS
在slave 上 CHANGE MASTER TO MASTER_LOG_POS=$NEXT_POS
show slave status 显示:
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
哈哈,完成同步。
如果中间碰到1062错误 在slave配置文件中设定slave-skip-errors=1062,重启slave
您可能感兴趣的文章:
关于Mysql隔离级别、锁与MVCC介绍
mysql的group_concat函数使用示例
MySQL开启慢查询日志功能的方法
正确使用MySQL update语句
汇总整理MYSQL相关操作命令
相关文章
12-28
mysql优化取随机数据慢的方法
11-26
MySQL 数据类型 大全
12-07
Mysql事务操作失败如何解决
11-25
浅析mysql.data.dll驱动各版本介绍
01-02
浅析mysql 语句的调度优先级及改变
JQuery
VUE
AngularJS
MSSql
MySQL
MongoDB
Redis
Linux
Tomcat
Nginx
网站首页
广告投放
联系我们
版权申明
联系站长