删除数据库 #

删除数据库是将已经存在的数据库从磁盘空间上清除,清除之后,数据库中的所有数据也将一同被删除。所以删除数据库需要特别谨慎,建议先备份数据。

SQL语句删除数据库 #

删除一个已经确定存在的数据库 #

MySQL 中删除数据库的基本SQL语句:

DROP DATABASE test2;

运行之后会询问是否删除,运行输出如下:

You're about to run a destructive command.
Do you want to proceed? (y/n): y
Your call!
Query OK, 0 rows affected
Time: 0.004s

删除一个不确定存在的数据库 #

如果你没有创建 test2 这个数据,或者你的这个数据库被删除了,再次执行查看数据库的定义 “SHOW CREATE DATABASE” 结果会输出一条错误信息,即数据库 test2 已经不存在。输出结果如下:

mysql> SHOW CREATE DATABASE test2;
ERROR 1049 (42000): Unknown database 'test2'

为了不产生错误,在删除数据库的时候可以加上一些简单的逻辑判断,判断数据库是否存在,不存在也不产生错误。

mysql> drop database if exists test2;
Query OK, 0 rows affected, 1 warning (0.00 sec)

产生一个警告说明此数据库不存在。

管理工具删除 #

使用普通用户登陆 MySQL 服务器,你可能需要特定的权限来创建或者删除 MySQL 数据库。所以我们这边使用root用户登录,root用户拥有最高权限,可以使用 mysql mysqladmin 命令来创建数据库,也可以通过这个命令来删除数据库。

mysqladmin -uroot -p drop test
Enter password:******

上面命令,会出现输出两句提示来提示你删除数据带来的风险,同时会输出一个确认删除的提示,来确认是否真的删除数据库,当数据库 test 存在,并且你输入 y 摁下了Enter键的时候,会提示删除成功。

Dropping the database is potentially a very bad thing to do.
Any data stored in the database will be destroyed.

Do you really want to drop the 'test' database [y/N] y
Database "test" dropped

如果数据库不存在则提示下面信息:

mysqladmin: DROP DATABASE test failed;
error: 'Can't drop database 'test'; database doesn't exist'