星期四, 七月 06, 2006

MySQL Replication 出現 Duplicate Key

當 MySQL Replication 的 Slave 機器連進去, 使用 show slave status, 發現以下的訊息, 而 Replication 也隨著停下來不在運作的時後的做法~

Error 'Duplicate entry 'PRIMARY KEY' for key 1' on query. Default database: 'DB_NAME'. Query: 'INSERT INTO TABLE_NAME xxx VALUE( 'xxxx' )

這代表 Key 有重覆到, 原因不明, 也許是 MySQL 本身就有 Bug, 總之遇到這種狀況的處理方法, 可以把重覆的那筆資料砍掉(不過可能會有很多), 或者就是用以下做法:

  1. SET GLOBAL SQL_SLAVE_SKIP_COUNTER = N; (N 是要跳過幾筆 (1~ ...))
  2. start slave;
  3. show slave status; # 持續看看狀況, 若有則重覆上述步驟

這樣子就可以了, 當然建議寫一隻程式來跑(可能會有很多)

相關標籤
Add this page to del.icio.us Add this page to Yahoo Taiwan's bookmark Add this page to MyShare

發表迴響

標題

內容 (限制 1000 字)

暱稱

電子郵件

個人網頁


 authimage


PS: 若無法留言, 請先確認是否有打開 JavaScript, 造成您的困擾, 實在萬分對不起 Orz...(如果無法留言, 勞煩可以發信給我好嗎? 謝謝.)
PS2: 若您的留言被誤判, 我都會再自行看過, 不需要一直重覆張貼~