Mysql信息数据库:Information_schema

1. Information_schema


information_schema是mysql的信息数据库。

通过该库能够查看mysql以下的数据库,表。权限等信息。

在数据库中会默认生成这个库。information_schema事实上是view视图,并非真实存在的表。

在mysql终端能够查看全部数据库。
mysql> show databases;

2. 包括的表


查看以下包括的表
mysql> use information_schema;    
Database changed
mysql> show tables;

3. SCHEMATA


包括全部数据库的信息
select * from SCHEMATA;
会列出全部database的信息。与 show databases;相通。

4. TABLES


information_schema.tables表用来保存数据库中全部表的信息。
     TABLE_SCHEMA: 数据库名称
     TABLE_NAME: 表名称
     TABLE_TYPE: BASE TABLE为基本数据表,VIEW为视图
         ENGINE: 存储引擎InnoDB
        VERSION: 10
     ROW_FORMAT: Compact
     TABLE_ROWS: 表行数,对于InnoDB表。在SQL优化中。行计数仅是大概预计值。
 AVG_ROW_LENGTH: 平均行长度
    DATA_LENGTH: 数据存储大小
MAX_DATA_LENGTH: 0
   INDEX_LENGTH: 索引大小
      DATA_FREE: innodb表显示可用空间
 AUTO_INCREMENT: 自增长id
    CREATE_TIME: 创建时间
TABLE_COLLATION: 校对字符集gbk_chinese_ci
查询一个表占用空间的大小
select concat(round(((INDEX_LENGTH+DATA_LENGTH)/1024/1024),2),'MB') as data from TABLES where table_schema='my_db' and table_name='my_table';
表示my_db.my_table表占用索引和数据总和的大小。

5. COLUMNS


columns表中包括全部数据库中的字段信息。
包括字段的数据库,表,校对编码,权限等信息

6. TRIGGERS


关于mysql触发程序的信息。


原文地址:https://www.cnblogs.com/yutingliuyl/p/6918454.html