解決方法:1、利用“set GLOBAL SQL_SLAVE_SKIP_COUNTER=1”語句跳過錯誤;2、在“my.cnf”文件中的mysqld下添加“slave_skip_errors = 1062”后重新啟動mysql即可。
本教程操作環(huán)境:windows10系統(tǒng)、mysql8.0.22版本、Dell G3電腦。
mysql錯誤1062怎么解決
mysql在主從復(fù)制過程中,由于各種的原因,從服務(wù)器可能會遇到執(zhí)行BINLOG中的SQL出錯的情況,在默認(rèn)情況下,服務(wù)器會停止復(fù)制進(jìn)程,不再進(jìn)行同步,等到用戶自行來處理。
slave-skip-errors的作用就是用來定義復(fù)制過程中從服務(wù)器可以自動跳過的錯誤號,當(dāng)復(fù)制過程中遇到定義的錯誤號,就可以自動跳過,直接執(zhí)行后面的SQL語句
mysql主從庫同步錯誤:1062 Error ‘Duplicate entry ‘1438019’ for key ‘PRIMARY’’ on query
mysql主從庫在同步時會發(fā)生1062 Last_SQL_Error: Error ‘Duplicate entry ‘的問題:顯然這個問題是因為插入重復(fù)主鍵導(dǎo)致從庫不工作了
方法一:可以用這個跳過錯誤
解決的辦法是在從庫上執(zhí)行:
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:數(shù)據(jù)庫已存在,創(chuàng)建數(shù)據(jù)庫失敗
-
1008:數(shù)據(jù)庫不存在,刪除數(shù)據(jù)庫失敗
-
1050:數(shù)據(jù)表已存在,創(chuàng)建數(shù)據(jù)表失敗
-
1051:數(shù)據(jù)表不存在,刪除數(shù)據(jù)表失敗
-
1054:字段不存在,或程序文件跟數(shù)據(jù)庫有沖突
-
1060:字段重復(fù),導(dǎo)致無法插入
-
1061:重復(fù)鍵名
-
1068:定義了多個主鍵
-
1094:位置線程ID
-
1146:數(shù)據(jù)表缺失,請恢復(fù)數(shù)據(jù)庫
-
1053:復(fù)制過程中主服務(wù)器宕機
-
1062:主鍵沖突 Duplicate entry ‘%s’ for key %d
推薦學(xué)習(xí):mysql視頻教程