一、背景说明
在某些应用场景下,需要对数据库中的表进行清空。通过如下两种方式可以实现。
说明:删除表结构属于高危操作,建议在删除前,将数据库的表结构和表数据进行备份!!!
二、实现方式
1、SQL语句的方式
1)通过如下SQL语句,查询数据库中的所有表结构,并拼接成删表语句。
SELECT concat('DROP TABLE IF EXISTS ', table_name, ';')
FROM information_schema.tables
WHERE table_schema = 'dbName';
其中,dbName 是实际需要删除表的数据库名。
以 zabbix 数据库为例,可以看到查询结果为140条删表语句。
2)将查询到的结果全选,复制粘贴SQL,执行即可删除 zabbix 数据库下的所有表结构。
2、MySQL客户端工具
通过 MySQL 客户端工具(如:Navicat),逐个选中 zabbix 数据库下的表,右键点击,选择“删除表”,进行数据表的删除操作。