ERROR 1007 (HY000): Can't create database 'データベース名'; database exists

ERROR 1007 の発生原因や対応方法に関する解説です。

対象のエラー

ERROR 1007 (HY000): Can't create database 'データベース名'; database exists

エラー発生の原因

CREATE DATABESE で作成しようとしたデータベースと同じ名前のデータベースが存在している為に発生する重複エラーです。

以下は、SHOW DATABASES で既に存在するデータベースを確認し、そこで存在しているデータベース「test」を作成しようとする例です。

mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+
4 rows in set (0.00 sec)

mysql> CREATE DATABASE test;
ERROR 1007 (HY000): Can't create database 'test'; database exists

エラーの対応方法

作成しようとしているデータベースの名前を誤っている場合は、データベース名を修正して作成しなおしてください。

既存のデータベースの内容が古くて不要である場合は、DROP DATABASE でデータベースを削除してから作成しなおしてください。

更新日:
サイドバー(仮