データベースの削除ができない

データベース再作成の際にdrop databaseで失敗した場合の対応。

問題

drop database時に何らかの事由によって失敗してしまった場合、コマンド(drop database)による削除を受け付けなくなる。

コマンドで削除

管理ユーザでmysqlにログイン

mysql -u root -p

mysqlの管理ユーザでログインする。

DB名確認

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| test_db            |
| mysql              |
+--------------------+
3 rows in set (0.01 sec)

test_dbを削除

mysql> drop database test_db;
ERROR 1010 (HY000): Error dropping database (can't rmdir './test_db/', errno: 17)

エラー。

対応

データベース情報が保存されているディレクトリを丸ごと削除する。

コマンドは使えないのでDBを物理削除

cd /usr/local/mysql/data
rm -rf test_db

確認

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
+--------------------+
2 rows in set (0.01 sec)