日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

【Shell】fix 1032报错信息的脚本

發(fā)布時(shí)間:2025/6/15 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Shell】fix 1032报错信息的脚本 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
?生產(chǎn)環(huán)境總會(huì)遇到由于各種原因?qū)е碌闹鲝膹?fù)制不一致的情況,導(dǎo)致slave出現(xiàn) 1032報(bào)錯(cuò)。為了使主從關(guān)系能夠穩(wěn)定的運(yùn)行,大多時(shí)候可以選擇修復(fù)1032 報(bào)錯(cuò) ,先跳過(guò)去 ,然后使用?percona??的工具?pt-table-checksum 和?pt-table-sync?進(jìn)行校驗(yàn)和修復(fù) 。?
修復(fù)1032 error的腳本如下:
  • #!/bin/sh
  • # fetch port 1032 error recored to /tmp/record.bashc.1032.$port
  • # parament port
  • if?[?-z?"$1"?]?;?then
  • ????PORT=3001
  • else
  • ????PORT=$1
  • fi
  • tmpfile="/tmp/record.bashc.1032.$PORT"
  • touch $tmpfile
  • if?[?-f $tmpfile?]?;?then
  • ????rm?-f $tmpfile
  • fi
  • while?true?;?do
  • ???mysql?-uroot?-h127.0.0.1?-P$PORT?-Ae?'SHOW SLAVE STATUS\G'?|?grep?-i Slave_SQL_Running?|?grep?-i no?>?/dev/null
  • ???if?[?$??-eq?0?]?;?then
  • ????# whether 1032??
  • ????mysql?-uroot?-h127.0.0.1?-P$PORT?-Ae?'SHOW SLAVE STATUS\G'?|?grep?-i Last_SQL_Errno?|?grep?-i 1032?>?/dev/null
  • ????if?[?$??-eq?0?]?;?then
  • ???? table=$(mysql?-uroot?-h127.0.0.1?-P$PORT?-Ae?'SHOW SLAVE STATUS\G'?|?grep Last_SQL_Error?|?awk?-F?'on table '?'{print $2}'?|?awk?-F?';'?'{print $1}')
  • ???? grep?"$table"?$tmpfile?>?/dev/null
  • ?????if?[?$??-eq?0?]?;?then
  • ????????echo?"Error $table is already exists , can't record $tmpfile , Errorno 1032"
  • ????????mysql?-h127.0.0.1?-P$PORT?-Ae?'STOP SLAVE ; SET GLOBAL sql_slave_skip_counter = 1 ; SELECT SLEEP(0.1) ; START SLAVE'
  • ?????else
  • ?????echo?"Error $table is not exists record it to $tmpfile Errorno 1032"
  • ????????echo?$table?>>?$tmpfile
  • ????????mysql?-uroot?-h127.0.0.1?-P$PORT?-Ae?'STOP SLAVE ; SET GLOBAL sql_slave_skip_counter = 1 ; SELECT SLEEP(0.1) ; START SLAVE'
  • ????????? fi
  • ????????else
  • ?????echo?"Error , is not 1032 error , please maunal fix , infor $(mysql -h127.0.0.1 -P$PORT -Ae 'SHOW SLAVE STATUS\G' | grep Last_SQL_Error)"
  • ????fi
  • ???else
  • ??????echo?"IS OK , behind master : $(mysql -h127.0.0.1 -P$PORT -Ae 'SHOW SLAVE STATUS\G' | grep Seconds_Behind_Master | awk '{print $2}')"
  • ???fi
  • ???sleep?0.2
  • done
  • 使用該腳本需要注意的是?sql_slave_skip_counter = 1?
    該參數(shù)是跳過(guò)一個(gè)事務(wù) ,是跳過(guò)一個(gè)事務(wù),是 跳過(guò)一個(gè)事務(wù),重要的事情說(shuō)三遍,如果你的一個(gè)事務(wù)里面包含了多個(gè)dml操作 比如4個(gè)update,第二個(gè)update出現(xiàn)問(wèn)題,使用該參數(shù)跳過(guò)的結(jié)果是 整個(gè)事務(wù)都會(huì)被跳過(guò)去,會(huì)導(dǎo)致數(shù)據(jù)不一致。
    binlog為row模式:
  • master> select * from t;
  • +----+-----+
  • | id | pid |
  • +----+-----+
  • | 1 | 1 |
  • | 2 | 2 |
  • | 3 | 3 |
  • +----+-----+
  • 3 rows in set (0.00 sec)
  • slave> select * from t;
  • +----+-----+
  • | id | pid |
  • +----+-----+
  • | 1 | 1 |
  • | 3 | 3 |
  • +----+-----+
  • 2 rows in set (0.00 sec)
  • master> BEGIN;
  • Query OK, 0 rows affected (0.00 sec)
  • master> DELETE FROM t WHERE id = 1;
  • Query OK, 1 row affected (0.00 sec)
  • master> DELETE FROM t WHERE id = 2;
  • Query OK, 1 row affected (0.00 sec)
  • master> DELETE FROM t WHERE id = 3;
  • Query OK, 1 row affected (0.00 sec)
  • master> COMMIT;
  • Query OK, 0 rows affected (0.01 sec)


  • slave> show slave status G
  • *************************** 1. row ***************************
  • ...
  • Last_SQL_Errno: 1032
  • Last_SQL_Error: Could not execute Delete_rows event on table test.t; Can't find record in 't', Error_code: 1032; handler error HA_ERR_KEY_NOT_FOUND; the event's master log mysql-bin.000002, end_log_pos 333
  • ...
  • 1 row in set (0.00 sec)
  • binlog為 statement格式

  • master> select * from t;
  • +----+-----+
  • | id | pid |
  • +----+-----+
  • | 4 | 1 |
  • | 6 | 3 |
  • +----+-----+
  • 2 rows in set (0.00 sec)
  • slave> select * from t;
  • +----+-----+
  • | id | pid |
  • +----+-----+
  • | 4 | 1 |
  • | 5 | 2 |
  • | 6 | 3 |
  • +----+-----+
  • 3 rows in set (0.00 sec)
  • master> BEGIN;
  • Query OK, 0 rows affected (0.00 sec)
  • master> delete from t where id = 4;
  • Query OK, 1 row affected (0.00 sec)
  • master> insert into t values (5,2);
  • Query OK, 1 row affected (0.00 sec)
  • master> delete from t where id = 6;
  • Query OK, 1 row affected (0.00 sec)
  • master> COMMIT;
  • Query OK, 0 rows affected (0.15 sec)
  • slave> show slave status G
  • *************************** 1. row ***************************
  • ...
  • ???????????????Last_SQL_Errno: 1062
  • ???????????????Last_SQL_Error: Error 'Duplicate entry '5' for key 'PRIMARY'' on query. Default database: 'test'. Query: 'insert into t values (5,2)'
  • ...
  • 1 row in set (0.00 sec)
  • slave> stop slave; set global sql_slave_skip_counter = 1; start slave;
  • Query OK, 0 rows affected (0.05 sec)
  • slave> select * from t;
  • +----+-----+
  • | id | pid |
  • +----+-----+
  • | 4 | 1 |
  • | 5 | 2 |
  • | 6 | 3 |
  • +----+-----+
  • 3 rows in set (0.00 sec)
  • 所以修復(fù)1032之后務(wù)必使用上面提供的工具(當(dāng)然如果你們的工作環(huán)境有更好的工具也可以)?修復(fù)數(shù)據(jù)不一致。
    推薦一下關(guān)于sql_slave_skip_counter 的參考資料
    [1]?MySQL小誤區(qū):關(guān)于set global sql_slave_skip_counter=N 命令的一些點(diǎn)
    [2]?Another reason why SQL_SLAVE_SKIP_COUNTER is bad in MySQL


    如果您覺(jué)得從這篇文章受益,可以贊助?北在南方?一瓶飲料 ^_^

    總結(jié)

    以上是生活随笔為你收集整理的【Shell】fix 1032报错信息的脚本的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 国精产品一品二品国精品69xx | 精品一区二区三区四 | 精品久久人妻av中文字幕 | 久久国产福利一区 | 色哟哟官网| ass日本寡妇pics | 视频一区免费 | 日韩系列在线 | 欧美日韩国产成人 | 你懂的在线观看视频 | 91丨porny丨尤物 | 一卡二卡三卡四卡五卡 | aa成人| 国产这里只有精品 | 91精品国产高清一区二区三蜜臀 | 好吊妞这里有精品 | 黄色视屏在线播放 | 动漫玉足吸乳羞免费网站玉足 | 91看毛片 | 人妻在线一区二区三区 | 黄色av一区二区 | 亚洲精品韩国 | www.亚洲成人 | 老牛影视av牛牛影视av | 国产精品无码久久久久高潮 | 国产大片一区二区三区 | 久久免费在线视频 | 国产精品视频无码 | 青青草在线观看视频 | 男生和女生差差的视频 | 户外少妇对白啪啪野战 | 我爱avav色aⅴ爱avav | 女同在线视频 | 日本免费无人高清 | 免费看裸体视频网站 | 中文字幕日本视频 | 色呦呦国产| 深夜影院深a | 无码人妻精品一区二区 | 亚洲 欧美 中文字幕 | 欧美在线一二 | 中文字幕精品视频在线 | 少妇被狂c下部羞羞漫画 | 中文字幕伦理 | 老色驴综合网 | 色妞欧美| 五月导航| 欧美日韩中文 | 欧美草比视频 | 欧美精品一区二区三区三州 | 好吊一区二区三区视频 | 国产女人高潮时对白 | 女王脚交玉足榨精调教 | www免费网站在线观看 | 一区二区三区免费毛片 | 精精国产xxxx视频在线播放 | 日韩av女优在线观看 | 日日射射 | 欧美sese| 亚洲专区第一页 | 欧美 日韩 综合 | 8x8ⅹ国产精品一区二区二区 | 亚洲一区二区三区在线 | 久久阁| 国产精品久久久久9999爆乳 | 欧美精品在线免费 | 午夜视频在线观看网站 | xxxx在线视频 | 成人欧美精品 | 国产农村妇女精品一区 | 操操操操操操操操操 | 久久久xxx| 欧美福利一区 | 人人操在线播放 | 国产在线视频二区 | 伦一理一级一a一片 | 波多野结衣在线播放视频 | 日韩av免费网站 | 成年人黄色片网站 | 91在线国产观看 | 少妇一级淫片免费放播放 | 欧美性xxxx| 日本亲子乱子伦xxxx | 国产精品不卡在线 | 亚洲五级片 | 成人综合激情网 | 星空大象mv高清在线观看免费 | 国产色婷婷一区二区 | 九九色网站 | 少妇做爰免费视频播放 | 五月天小说网 | 日本一区二区三区免费看 | 国产色网站 | 久久综合亚洲色hezyo国产 | 天天躁日日躁狠狠躁免费麻豆 | √天堂资源在线 | 久久三级| 日韩h在线 | 成年人在线免费观看 |