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

更新日:

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

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

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

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

 

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

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

 

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

Can't drop database because table exists
中にテーブルが存在してるので、データベース削除はできません。

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

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

 

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

 

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

 

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

 

 

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

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

 

写真で血圧記録

  • この記事を書いた人

Neby

本を毎日多読しつつ、資産運用、プログラミング、心理学、ネットビジネススキルを猛向上中。貧富の差が広がる5年後、10年後に安心生活を送るためのお金のリテラシー、スキル、資産を一緒に作っていきましょう。

-PHP Laravel入門