Mysql 删除具有特定数量表的所有数据库
我有一个MYSQL服务器,有很多非活动数据库。所有这些“死”DBs每个都有不到109个表,所以我正在寻找一种方法来一次性删除所有这些表,但还没有找到一种方法来实现这一点。另一种方法是删除所有没有X表的数据库(其中X是添加到我们模型中的最新表)。您可以通过以下查询识别数据库:Mysql 删除具有特定数量表的所有数据库,mysql,database,drop-database,Mysql,Database,Drop Database,我有一个MYSQL服务器,有很多非活动数据库。所有这些“死”DBs每个都有不到109个表,所以我正在寻找一种方法来一次性删除所有这些表,但还没有找到一种方法来实现这一点。另一种方法是删除所有没有X表的数据库(其中X是添加到我们模型中的最新表)。您可以通过以下查询识别数据库: select schema_name from information_schema.tables group by schema_name having count(*) < 109 选择架构名称 来自信息\u s
select schema_name
from information_schema.tables
group by schema_name
having count(*) < 109
选择架构名称
来自信息\u schema.tables
按架构名称分组
计数(*)小于109的
然后,您可以使用schema_name列表在Excel等工具中创建“drop database”命令。或者,放一个光标在它们之间循环。或者将它们读入您喜欢的脚本语言中进行删除。我敢问“lots”是多少吗?我认为您最好用您喜欢的任何语言编写一个简单的脚本,在询问数据库列表(show databases)后,计算每个数据库(show tables)的表数!!!您熟悉哪些脚本语言?将
USE DATABASE x
和SHOW TABLES
结合使用可能会让您开始学习。