admin管理员组文章数量:1638917
一、mysql 系统自带信息数据库
在Mysql数据库中,有三个自带的信息数据库:
- information_schema库
- mysql库
- performance_schema库
performance_schema 用于性能分析
二、 information_schema
information_schema :
用于存储数据库元数据(关于数据的数据),例如数据库名、表名、列的数据类型、访问权限等。
information_schema 中的表实际上是视图,而不是基本表,因此,文件系统上没有与之相关的文件。???
2.1 information_schema 库中常用的表
CHARACTER_SETS | 提供了 mysql 可用字符集的信息。SHOW CHARACTER SET; 命令从这个表获取结果。 |
COLUMNS | 存储表中的列信息,包括表有多少列、每个列的类型等。SHOW COLUMNS FROM schemaname.tablename 命令从这个表获取结果。 |
COLUMN_PRIVILEGES | 列权限 |
SCHEMATA | 当前 mysql 实例中所有数据库的信息。SHOW DATABASES; 命令从这个表获取数据。 |
STATISTICS | 表索引的信息。SHOW INDEX FROM schemaname.tablename; 命令从这个表获取结果。 |
TABLES | 存储数据库中的表信息(包括视图),包括表属于哪个数据库,表的类型、存储引擎、创建时间等信息。SHOW TABLES FROM XX; 命令从这个表获取结果。 |
TABLE_PRIVILEGES | 表权限 |
USER_PRIVILEGES | 用户权限表 |
其中最重要的是schemata、tables、columns这三个数据库
2.2 COLUMNS 表
COLUMNS ,存储表中的列信息,包括表有多少列、每个列的类型等。
SHOW COLUMNS FROM schemaname.tablename
命令从这个表获取结果。
表COLUMNS ,存储的是整个数据库里,所有表的所有列信息。
表的每一列,都对应COLUMNS表中每一行数据。
如Student表。一共有5列。
则在COLUMNS中,存储Student表的列数据,一共有5条。每一条数据对应一个列。
2.2.1 COLUMNS表中,部分列的信息:
TABLE_SCHEMA:数据库名
TABLE_NAME:表名
COLUMN_NAME:列名
COLUMN_KEY:列对应索引类型PRI、MUL
COLUMN_TYPE:列的数据类型,char varchar int bigint等等
COLUMN_COMMENT:列的注释信息。
DATA_TYPE:列数据类型
COLUMN_DEFAULT:列中默认值
CHARACTER_SET_NAME:数据库对应字符列默认字符编码,utf8等
IS_NULLABLE: 是否为null
NUMERIC_PRECISION: 列中数字长度(整数部分)
NUMERIC_SCALE: 列中数字长度(浮点数部分)
参考博客:
MySQL 中的 information_schema 数据库_kikajack的博客-CSDN博客_information_schema
information_schema介绍_weixin_46195145的博客-CSDN博客
本文标签: mysqlinformationschema
版权声明:本文标题:Mysql information_schema库 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dianzi/1729277799a1193721.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论