MySQL系统库之information_schema

MySQL服务器之information_schema数据库

  • 简介:
  • 重要的几个表:
    • 1.schemata
    • 2.tables
    • 3.columns

简介:

information_schema是MySQL系统库之一,它用于存储关于数据库和表的元数据信息。该库包含了一系列的表,用于存储关于数据库、表、列、索引、约束、权限等的信息。

information_schema库中的表包括:

表格(tables):存储数据库中的表的信息,例如表名、引擎类型、行数等。
列(columns):存储表中的列的信息,例如列名、数据类型、默认值等。
约束(constraints):存储表中的约束信息,例如主键、外键、唯一约束等。
索引(indexes):存储表中的索引信息,例如索引名、索引类型、索引列等。
用户权限(privileges):存储用户和表之间的权限关系。
通过查询information_schema库中的表,可以获取关于数据库和表的详细信息,用于数据分析、权限管理等操作。例如,可以通过查询表格表获取数据库中所有表的列表,通过查询列表获取表的列信息等。

特别的是,information_schema库是一个虚拟库,其表中的数据并不实际存储在磁盘上,而是在运行时动态生成的。因此,information_schema库中的数据不可更改,只能用于查询元数据信息。

重要的几个表:

1.schemata

schemata这个表中存储了整个数据库服务器中的数据库名,其中特别需要注意的是:
SCHEMA_NAME,这列可以直接查询出数据库名。

±-------------±-------------------±---------------------------±-----------------------±---------+
| CATALOG_NAME | SCHEMA_NAME | DEFAULT_CHARACTER_SET_NAME | DEFAULT_COLLATION_NAME | SQL_PATH |
±-------------±-------------------±---------------------------±-----------------------±---------+
| def | information_schema | utf8 | utf8_general_ci | NULL |
| def | mysql | latin1 | latin1_swedish_ci | NULL |
| def | sys | utf8 | utf8_general_ci | NULL |
±-------------±-------------------±---------------------------±-----------------------±---------+

2.tables

tables这个表中记录了数据库中的各个表,这里要注意:

  1. TABLE_SCHEMA ,这一列可以直接反应表的从属关系
  2. TABLE_NAME,这一列可以直接得到表的名称

±--------------±-------------------±-----------±------------±-------±--------±-----------±-----------±---------------±------------±----------------±-------------±----------±---------------±--------------------±------------±-----------±----------------±---------±----------------±--------------+
| TABLE_CATALOG | TABLE_SCHEMA | TABLE_NAME | TABLE_TYPE | ENGINE | VERSION | ROW_FORMAT | TABLE_ROWS | AVG_ROW_LENGTH | DATA_LENGTH | MAX_DATA_LENGTH | INDEX_LENGTH | DATA_FREE | AUTO_INCREMENT | CREATE_TIME | UPDATE_TIME | CHECK_TIME | TABLE_COLLATION | CHECKSUM | CREATE_OPTIONS | TABLE_COMMENT |
±--------------±-------------------±-----------±------------±-------±--------±-----------±-----------±---------------±------------±----------------±-------------±----------±---------------±--------------------±------------±-----------±----------------±---------±----------------±--------------+
| def | information_schema | COLLATIONS | SYSTEM VIEW | MEMORY | 10 | Fixed | NULL |
231 | 0 | 66819522 | 0 | 0 | NULL | 2024-09-10 23:24:14 | NULL | NULL | utf8_general_ci | NULL | max_rows=290514 | |
±--------------±-------------------±-----------±------------±-------±--------±-----------±-----------±---------------±------------±----------------±-------------±----------±---------------±--------------------±------------±-----------±----------------±---------±----------------±--------------+

3.columns

columns这个表记录了表中的列。这里要注意:

  1. TABLE_SCHEMA ,这一列可以直接反应表的从属关系
  2. TABLE_NAME,这一列可以直接得到表的名称
  3. COLUMN_NAME,得到表中列的名称

±--------------±-------------------±---------------±---------------------±-----------------±---------------±------------±----------±-------------------------±-----------------------±------------------±--------------±-------------------±-------------------±----------------±------------±-----------±------±-----------±---------------±----------------------+
| TABLE_CATALOG | TABLE_SCHEMA | TABLE_NAME | COLUMN_NAME | ORDINAL_POSITION | COLUMN_DEFAULT | IS_NULLABLE | DATA_TYPE | CHARACTER_MAXIMUM_LENGTH | CHARACTER_OCTET_LENGTH | NUMERIC_PRECISION | NUMERIC_SCALE | DATETIME_PRECISION | CHARACTER_SET_NAME | COLLATION_NAME | COLUMN_TYPE | COLUMN_KEY | EXTRA | PRIVILEGES | COLUMN_COMMENT | GENERATION_EXPRESSION |
±--------------±-------------------±---------------±---------------------±-----------------±---------------±------------±----------±-------------------------±-----------------------±------------------±--------------±-------------------±-------------------±----------------±------------±-----------±------±-----------±---------------±----------------------+
| def | information_schema | CHARACTER_SETS | DEFAULT_COLLATE_NAME | 2 | | NO | varchar |
32 | 96 | NULL | NULL | NULL | utf8 | utf8_general_ci | varchar(32) |
| | select | | |
±--------------±-------------------±---------------±---------------------±-----------------±---------------±------------±----------±-------------------------±-----------------------±------------------±--------------±-------------------±-------------------±----------------±------------±-----------±------±-----------±---------------±----------------------+

  • 15
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mottte

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值