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 @ 2019-10-22 10:10  胜金  阅读(38593)  评论(2编辑  收藏  举报