MySQLでインポートができない、データベース削除もできない時の対処法

ある日、XAMPPのデータベースがおかしくなってしまったので、
一度、中に入ったデータを消して、バックアップをインポートしようとしたのですが、

#1813 – Tablespace for table ‘`データベース名`.`テーブル名`’ exists. Please DISCARD the tablespace before IMPORT

あなたのデータベースのテーブルスペースは存在してます。インポートする前にそれを消してね。

のようなエラー文が出てしまってインポート自体ができませんでした。

なんか既存のテーブルが邪魔してるっぽいなって事で、phpMyAdminから、既存のテーブルを全削除して、空っぽのデータベースにしました。

しかし、それでもエラーを吐いてインポートできません。

ならば、一度データベースごと削除して、データベースを作り直そうと思ったのですが、
phpMyAdminからデータベースの削除を試みると、

[st-mybox title=”” fontawesome=”” color=”#757575″ bordercolor=”#94b8ff” bgcolor=”#fff” borderwidth=”2″ borderradius=”5″ titleweight=”bold” fontsize=”” myclass=”st-mybox-class” margin=”25px 0 25px 0″]Can’t drop database because table exists
中にテーブルが存在してるので、データベース削除はできません。[/st-mybox]

みたいなエラーが今度は出てしまいました。

テーブルは今全削除したのに、中にテーブルがあるから削除できんと言うのですよ(汗)。

これ、どうやら壊れたファイルがmysql上に残っちゃってるみたいです。

というわけで、こいつらを削除にいきます。

XAMPPを例に話しますが、mysql→dataフォルダを開きます。
中にデータベース名のフォルダがあるので、それを開きます。

 

開いたら、中のファイルを全部、どっか別のフォルダにカット&ペーストして退避してください。

結局このファイル群のどれかがぶっ壊れてたという事なので、
このフォルダを空っぽにする事で
データベースの削除やインポートができるようになりました。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする