MySQL数据库中查询数据库表、字段总数量,查询数据总量

  最近要查询一些数据库的基本情况,由于以前用oracle数据库比较多,现在换了MySQL数据库,就整理了一部分语句记录下来。

  1、查询数据库表数量

1 #查询MySQL服务中数据库表数据量
2 SELECT COUNT(*) TABLES, table_schema FROM information_schema.TABLES    GROUP BY table_schema;
3 #查询指定数据库表数量 4 SELECT COUNT(*) TABLES, table_schema FROM information_schema.TABLES WHERE table_schema = 'szdb'

  2、查询数据库字段

1 #查询一个表中有多少字段
2 SELECT COUNT(*) FROM information_schema. COLUMNS WHERE table_schema = 'szdb' AND table_name = 'SystemLog';
3 
4 #查询一个数据库中有多少字段
5 SELECT COUNT(column_name) FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'szdb';
6 
7 #查询数据库中所以表、字段、字段类型、注释等信息
8 SELECT TABLE_NAME, column_name, DATA_TYPE, column_comment FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'szdb' ;

  3、查询数据库中持久化的数据量

  MySQL中有一个名为 information_schema 的数据库,在该库中有一个 TABLES 表,这个表主要字段分别:TABLE_SCHEMA : 数据库名,TABLE_NAME:表名,ENGINE:所使用的存储引擎,TABLES_ROWS:记录数,DATA_LENGTH:数据大小,INDEX_LENGTH:索引大小use information_schema;统计数据主要使用的就是这张表了。

复制代码
#统计数据库中每个表保存的数据量
use information_schema;
SELECT TABLE_NAME, (DATA_LENGTH/1024/1024) as DataM ,(INDEX_LENGTH/1024/1024) as IndexM,((DATA_LENGTH+INDEX_LENGTH)/1024/1024) as AllM,TABLE_ROWS FROM TABLES WHERE TABLE_SCHEMA = 'szdb';
#数据库总数据量
SELECT (sum(DATA_LENGTH)/1024/1024) as dataM from `TABLES` WHERE TABLE_SCHEMA = 'szdb';
#查询每张表数量 select table_name,table_rows from tables where TABLE_SCHEMA = 'szdb' order by table_rows desc; #数据库总数量 SELECT sum(table_rows) from tables where TABLE_SCHEMA = 'szdb' order by table_rows desc;
复制代码

  需要查询什么信息,自己修改语句就可以了。

  

 

posted @   胜金  阅读(40032)  评论(2编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示