MySQL表相关的数据字典梳理
这是学习笔记的第 1988 篇文章
最近在梳理MySQL数据字典的时候,发现原本印象中的MySQL数据字典其实还是很丰富的。我们逐个来梳理一下。
表信息
1)命令行
desc devopsdb.test_data
show create table devopsdb.test_data
show table status
2)SQL
information_schema.tables
information_schema.INNODB_SYS_TABLESPACES
information_schema..INNODB_SYS_TABLES
约束信息
information_schema.TABLE_CONSTRAINTS
information_schema.INNODB_SYS_FOREIGN_COLS
information_schema.INNODB_SYS_FOREIGN
字段信息
1)命令行
show columns from devopsdb.test_data
2)SQL
information_schema.columns
INNODB_SYS_COLUMNS
索引信息
1)命令行
show index from devopsdb.test_data
2)SQL
information_schema.KEY_COLUMN_USAGE
information_schema.INNODB_SYS_INDEXES
权限信息
mysql.tables_priv
mysql.columns_priv
information_schema.SCHEMA_PRIVILEGES
统计信息
information_schema.statistics
mysql.innodb_index_stats
mysql.innodb_table_stats
performance_schema.table_handles
直接秀出来整理的脑图。
如上只是一个概览的列表整理,在实际过程中还会发现一系列的的细节,比如information_schema.tables算是一个很经典的数据字典了,对于这个数据字典,字段create_time和update_time的处理逻辑和我们想象的差别很大。
对于数据字典还是需要好好的整理一番,简单来说,不能眼高手低。