MySQL空数据库/删除所有表

时间:2020-01-09 14:16:39  来源:igfitidea点击:

如何清空MySQL数据库?
为了删除MySQL数据库中名为atomstore的所有表(100个),需要执行哪些SQL命令?

解决方法:您需要使用DROP DATABASEsql命令删除数据库/空数据库中的所有表并删除数据库。
此声明要非常小心!要使用DROP DATABASE,解决方法:您需要对数据库具有DROP特权

MySQL删除所有表语法:

DROP DATABASE {mysql-database-name}

方法1:使用root用户清空数据库

为了使用此过程,您必须具有删除和创建数据库特权(否则,您将删除数据库,但无法再次创建它)。
以MySQL root或admin用户身份登录以删除atomstore数据库:

$ mysql -u root -p

现在删除数据库:

mysql> DROP DATABASE atomstore;

现在再次创建数据库:

mysql> CREATE DATABASE atomstore;

退出并关闭会话:

mysql> quit

方法2:使用不带root访问权限的shell脚本删除所有表

我有小型便捷的Shell脚本,可删除所有表,而无需再次删除并创建MySQL数据库。

#!/bin/bash
MUSER=""
MPASS=""
MDB=""
 
# Detect paths
MYSQL=$(which mysql)
AWK=$(which awk)
GREP=$(which grep)
 
if [ $# -ne 3 ]
then
	echo "Usage: 
$ ./drop.table.sh tom jerry quiz
{MySQL-User-Name} {MySQL-User-Password} {MySQL-Database-Name}" echo "Drops all tables from a MySQL" exit 1 fi   TABLES=$($MYSQL -u $MUSER -p$MPASS $MDB -e 'show tables' | $AWK '{ print }' | $GREP -v '^Tables' )   for t in $TABLES do echo "Deleting $t table from $MDB database..." $MYSQL -u $MUSER -p$MPASS $MDB -e "drop table $t" done

只需使用以下脚本,以清空用户名为tom和密码jerry的名为quiz的数据库:

##代码##