在 MySQL 中查询表的数量,核心是通过 系统表 information_schema.TABLES(兼容所有版本,包括 5.7),或快捷命令 SHOW TABLES,以下是不同场景的快速查询方法
先切换到目标数据库(比如你恢复的 db1),再统计数据表数量(自动排除视图、临时表):
mysql -u root -pmysql> USE db1; # 切换到你要查询的数据库(比如之前恢复的 db1)
SELECT COUNT(*) AS 数据表数量 FROM information_schema.TABLES WHERE TABLE_SCHEMA = DATABASE() -- DATABASE() 自动获取当前库名 AND TABLE_TYPE = 'BASE TABLE'; -- 只算数据表(排除视图、存储过程等)
数据表数量 = 5 表示当前库有 5 个数据表。AND TABLE_TYPE = 'BASE TABLE' 即可。如果不想切换数据库,直接指定库名查询(比如查询 db1 或 mysql 库的表数):
-- 示例:查询 db1 库的数据表数量SELECT COUNT(*) AS db1数据表数量 FROM information_schema.TABLES WHERE TABLE_SCHEMA = 'db1' -- 替换为你的库名(必须加引号) AND TABLE_TYPE = 'BASE TABLE';
统计 MySQL 中所有数据库的表总数(或按库分组显示):
-- 1. 统计所有库的总数据表数SELECT COUNT(*) AS 所有库数据表总数 FROM information_schema.TABLES WHERE TABLE_TYPE = 'BASE TABLE';-- 2. 按数据库分组,显示每个库的表数(更清晰)SELECT TABLE_SCHEMA AS 数据库名, COUNT(*) AS 数据表数量 FROM information_schema.TABLES WHERE TABLE_TYPE = 'BASE TABLE'GROUP BY TABLE_SCHEMA ORDER BY 数据表数量 DESC;
如果只是想快速看当前库的表数,可直接用 SHOW TABLES 配合计数(无需系统表):
USE db1;SELECT COUNT(*) AS 当前库表数 FROM (SHOW TABLES) AS temp;
information_schema.TABLES 是 MySQL 系统表,存储所有库、表的元信息,5.7 完全兼容;TABLE_TYPE = 'BASE TABLE':仅统计「用户创建的数据表」,排除视图(VIEW)、系统临时表等;SELECT 权限,就能查询(无需 root 权限)。
樱花动漫APP下载-樱花动漫官方正版APP最新下载入口
premiere画中画大小位置调节方法 - premiere如何调节画中画大小和位置
丁香修剪技巧有哪些-如何用丁香修剪技巧打造优美树形
在Win2008 R2中如何删除DHCP管理工具-Win2008 R2怎样删除DHCP管理工具
如何通过支付宝阿宝自动匹配生活服务入口-怎样借助支付宝阿宝自动匹配生活服务入口
edius素材添加单门推效果的操作方法-edius素材如何添加单门推效果