解决方法:1、利用“set GLOBAL SQL_SLAVE_SKIP_COUNTER=1”语句跳过错误;2、在“my.cnf”文件中的mysqld下添加“slave_skip_errors = 1062”后重新启动mysql即可。
本教程操作环境:windows10系统、mysql8.0.22版本、Dell G3电脑。
mysql错误1062怎么解决
mysql在主从复制过程中,由于各种的原因,从服务器可能会遇到执行BINLOG中的SQL出错的情况,在默认情况下,服务器会停止复制进程,不再进行同步,等到用户自行来处理。
slave-skip-errors的作用就是用来定义复制过程中从服务器可以自动跳过的错误号,当复制过程中遇到定义的错误号,就可以自动跳过,直接执行后面的SQL语句
mysql主从库同步错误:1062 Error ‘Duplicate entry ‘1438019’ for key ‘PRIMARY’’ on query
mysql主从库在同步时会发生1062 Last_SQL_Error: Error ‘Duplicate entry ‘的问题:显然这个问题是因为插入重复主键导致从库不工作了
方法一:可以用这个跳过错误
解决的办法是在从库上执行:
mysql> slave stop; mysql> set GLOBAL SQL_SLAVE_SKIP_COUNTER=1; mysql> slave start;
方法二:修改mysql配置文件,让他自己跳过
修改mysql配置文件 /etc/my.cnf
在 [mysqld]下加一行 slave_skip_errors = 1062
保存重启mysql
扩展知识:
一些error code代表的错误如下:
-
1007:数据库已存在,创建数据库失败
-
1008:数据库不存在,删除数据库失败
-
1050:数据表已存在,创建数据表失败
-
1051:数据表不存在,删除数据表失败
-
1054:字段不存在,或程序文件跟数据库有冲突
-
1060:字段重复,导致无法插入
-
1061:重复键名
-
1068:定义了多个主键
-
1094:位置线程ID
-
1146:数据表缺失,请恢复数据库
-
1053:复制过程中主服务器宕机
-
1062:主键冲突 Duplicate entry ‘%s’ for key %d
推荐学习:mysql视频教程