mysql創建表時提示 1050 - Table'`test`.`mytable`' already exists

Mysql關於已經刪除的表無法再次創建

   在數據庫備份時添加 DROPTABLE IF EXISTS 語句 仍然提示 1050 - Table'`test`.`mytable`' already exists 錯誤時,發現網上資料很少,找了好久發現瞭解決方法 :

http://www.xuejiehome.com/blread-1701.html

說是因爲表在 innodb 內部數據字典中已存在,沒有相對應的 .frm 文件,在 innodb的數據文件中就形成了一個孤表(orphaned table)。

   解決方式: 在另外一個數據庫中創建一個相同名字的innodb表,並把.frm拷貝到這個數據庫目錄下,數據庫就會認爲這個表存在,再執行droptable就可以刪除掉了。

發佈了26 篇原創文章 · 獲贊 23 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章