mysql的一個坑

今天被這個問題坑了一天,定時任務向數據庫中插曲數據無效,也不拋異常(這是坑的地方)。遇到這個問題個人直覺告訴我,是邏輯的問題,不是 db的問題(程序員都這樣,作事都是優先考慮本身的問題)。因而看監控,看日誌,最後無奈本身手工走流程,都沒有發現任何問題,因而直覺又告訴我是db的 問題,可是我一直在作無用的糾結(跑程序),搞半天仍是無用(其實這事兒應該本身在庫上直接運行一條sql,一了百了),可是本身仍是有些一根筋,沒有想 到這個方法(估計是怕搞錯了線上數據吧)。
  自增id是這樣的:
  定義id的時候根據類型不一樣,自增id的上限不一樣,int類型的上限是2的32次 - 1,超過這個上限,在insert 是會拋異常的,那麼到底是什麼緣由致使沒有拋異常呢,是由於sql中用了duplitkey(不信你試試)。
  解決這個問題的方法,1.爲了快速修復,在check修改id無影響的話,能夠alter id的類型,改爲更大的 如bigint,另外一種方法,那就是切表唄。程序員

相關文章
相關標籤/搜索