佳木斯湛栽影视文化发展公司

主頁 > 知識(shí)庫 > MySQL表自增id溢出的故障復(fù)盤解決

MySQL表自增id溢出的故障復(fù)盤解決

熱門標(biāo)簽:Linux服務(wù)器 鐵路電話系統(tǒng) 百度競(jìng)價(jià)排名 AI電銷 服務(wù)外包 地方門戶網(wǎng)站 網(wǎng)站排名優(yōu)化 呼叫中心市場(chǎng)需求

問題:MySQL某個(gè)表自增id溢出導(dǎo)致某業(yè)務(wù)block

背景:

    tokudb引擎的一個(gè)大表tb1,存放業(yè)務(wù)上的機(jī)審日志,每天有大量的寫入, 并且由于歷史原因,這張表是int signed 類型的,最大只能存 2147483647行記錄 。

處理過程:

    增加DBLE中間件代理,然后做range分區(qū),將新數(shù)據(jù)寫到新加的的一個(gè)分片上。 同時(shí)業(yè)務(wù)上修改連接將這個(gè)表tb1的連接方式改走DBLE。 但是業(yè)務(wù)上改完代碼后,發(fā)現(xiàn)還有殘余的部分insert into tb1的寫請(qǐng)求被轉(zhuǎn)發(fā)到了老的表上,且有些表被錯(cuò)誤得路由到了DBLE上。 這加劇了事情的復(fù)雜度。最終業(yè)務(wù)上將這個(gè)寫tb1的代碼下線后,整個(gè)業(yè)務(wù)才恢復(fù)正常。

后來復(fù)盤后,我想了下其實(shí)這種情況下,對(duì)于日志類的表的問題,DBA應(yīng)該采用迅速果斷的措施 盡快恢復(fù)業(yè)務(wù),然后再考慮其它問題。 這樣考慮的話,上面的問題就好解決了。 只需要下面幾步:

use logdb;

select max(id) from tb1;  -- 記錄下當(dāng)前最大的id為 xxxx
create table tb2 LIKE tb1;  -- 創(chuàng)建影子表

alter table tb2 modify column id bigint unsigned not null auto_increment ;  -- 修改新表為bigint unsigned類型,能存 18446744073709551615 行數(shù)據(jù)。
alter table tb2 auto_increment=xxxx+1; -- 改大新表的自增主鍵起始值

rename table tb1 to tb_archive , tb2 to tb1; -- 切換表名

這樣操作后,tb1就可以寫入數(shù)據(jù)了,業(yè)務(wù)也能暫時(shí)恢復(fù),剩下的工作就是把 tb_archive 表的數(shù)據(jù)遷移到 tb1 里面的(遷移數(shù)據(jù)可以使用pt-archiver工具在后臺(tái)慢慢跑就行)。

算了下,整個(gè)操作中切表最多5分鐘左右即可恢復(fù)業(yè)務(wù)的寫入操作,剩余的遷移數(shù)據(jù)的影響相對(duì)會(huì)小一些。

后續(xù)優(yōu)化措施:

    增加對(duì)自增id的監(jiān)控, 見這里 https://www.jb51.net/article/184935.htm

    整理些生產(chǎn)上可能遇到的突發(fā)問題,并正對(duì)性的制定相關(guān)的應(yīng)急預(yù)案

到此這篇關(guān)于MySQL表自增id溢出的故障復(fù)盤解決的文章就介紹到這了,更多相關(guān)MySQL自增id溢出內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • MySQL的自增ID(主鍵) 用完了的解決方法
  • 關(guān)于mysql自增id,你需要知道的
  • 關(guān)于MySQL自增ID的一些小問題總結(jié)
  • 關(guān)于Mysql自增id的這些你可能還不知道
  • mysql自增id超大問題的排查與解決
  • MySQL分表自增ID問題的解決方法
  • 線上MySQL的自增id用盡怎么辦

標(biāo)簽:仙桃 衡水 銅川 湖南 蘭州 黃山 湘潭 崇左

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《MySQL表自增id溢出的故障復(fù)盤解決》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    共和县| 哈密市| 桑植县| 大方县| 汉寿县| 莲花县| 陕西省| 长武县| 武冈市| 新密市| 娱乐| 肇源县| 绥德县| 安泽县| 栖霞市| 罗平县| 称多县| 高阳县| 嘉定区| 郸城县| 长沙市| 建德市| 天台县| 莲花县| 同江市| 赤峰市| 卢龙县| 博湖县| 长宁县| 景德镇市| 合山市| 平陆县| 临夏县| 嘉善县| 儋州市| 临猗县| 汕头市| 通州区| 南阳市| 富顺县| 蕉岭县|