MySQL Import / 資料還原 忽略錯誤訊息

要將 MySQL 的資料備份還原(mysqldump), 但是出現下面這些錯誤訊息: (mysql -u root DBNAME < DB.sql)

ERROR 1062 (23000) at line 43238: Duplicate entry '?' for key 2
ERROR 1062 (23000) at line 50788: Duplicate entry '?' for key 2
ERROR 1062 (23000) at line 50860: Duplicate entry '?' for key 2
ERROR 1062 (23000) at line 50923: Duplicate entry '?' for key 2

平常狀況這個應該是不存在的(或許吧? 業主的 DB 不知道為何會匯出這樣子的資料), 總之要先 Import 進去, 才能開始進行開發的工作.

出現上述的錯誤訊息, 匯入的動作就會停止, 所以要讓 MySQL 不要管這些訊息, 強制匯入.

一直記得是 IGNORE 還是 Skip 等等的指令, 所以找很久, 原來是記錯了, 只是簡單的 --force 就可以了. Orz..

忽略錯誤, 繼續執行 Import 的命令

  • mysql -u root DB_NAME --force < DB.sql

相關文章


關於 Tsung

對新奇的事物都很有興趣, 喜歡簡單的東西, 過簡單的生活.
本篇發表於 My_Note-Unix。將永久鏈結加入書籤。

MySQL Import / 資料還原 忽略錯誤訊息 有 6 則回應

  1. whoami 說道:

    oracle 是用 IGNORE

  2. Tsung 說道:

    Soga, 感恩~ 🙂

  3. ㄚ凱 說道:

    我覺得有可能是匯出得資料有編碼錯誤或是復合 key 的問題?...

  4. Tsung 說道:

    或許吧, 不過這是別人的資料, 我就沒有詳細研究下去了. Orz..
    我猜可能是複合 key 的問題, 編碼應該不會錯才對~

  5. accesine 說道:

    老兄,太感谢了!

    救我命了。

  6. imnpc 說道:

    谢谢兄弟的教程,用这个救回一个论坛数据

發表迴響