MySQL的information_schema中所有表的含义
information_schema是MySQL数据库中的一个系统数据库,其中包括了MySQL服务器中的所有元数据信息,如数据库、数据表、视图、列、用户以及权限等信息。因此,information_schema中的所有表都是用于存储MySQL数据库的元数据信息的。这些表的名称和含义如下:
- CHARACTER_SETS:存储MySQL服务器支持的所有字符集及其相关信息。
- COLLATIONS:存储MySQL服务器支持的所有字符集和排序规则(collation)的对应关系。
- COLUMNS:存储所有数据表中的列信息,包括列名、数据类型、默认值、是否为主键等信息。
- KEY_COLUMN_USAGE:存储索引列的相关信息。
- ROUTINES:存储所有存储过程和函数的信息,如名称、参数、返回类型等。
- SCHEMATA:存储所有数据库的信息。
- TABLES:存储所有数据表的信息,如所属数据库、表名、表类型(InnoDB、MyISAM等)等。
- TABLE_CONSTRAINTS:存储所有数据表的约束信息,如主键、外键、唯一键等。
- STATISTICS:存储数据表的统计信息,如每个索引的大小、行数等。
- USER_PRIVILEGES:存储所有用户的权限信息。
以上是information_schema中部分表的含义,其他表的含义可以通过查询MySQL官方文档来获取。
mysql information_schema
回答1:
这是 MySQL 的 information_schema 数据库,它包含关于数据库中的所有元数据信息,包括表、列和索引等。MySQL中的information_schema是一个元数据数据库,它包含有关MySQL服务器的信息。information_schema中包含许多表,这些表提供了关于MySQL服务器的各种信息,例如数据库,表,列,索引,用户,权限等。
在MySQL中,您可以使用以下命令访问information_schema数据库:
USE information_schema;
然后,您可以使用SELECT语句从information_schema中的表中检索所需的信息。例如,以下命令将返回当前MySQL服务器上所有数据库的名称:
SELECT schema_name FROM schemata;
如果您想查看有关MySQL中的其他表或列的信息,请查看MySQL官方文档或使用以下命令检索信息_schema中的所有表的列表:
SELECT table_name FROM tables WHERE table_schema = 'information_schema';
回答2:
MySQL中的information_schema是一个虚拟的数据库,其中包含了关于MySQL服务器的元数据信息。它包含了多个表,用于存储关于数据库、表、列、用户和权限等信息的一些元数据。这些元数据可以通过查询information_schema中的表来进行获取。
information_schema中包含的表的具体信息如下:
CHARACTER_SETS:该表包含了MYSQL支持的字符集的信息。
COLLATIONS:该表存储了MYSQL支持的排序规则。
COLUMNS:该表用于存储所有表和视图的列定义信息。
KEY_COLUMN_USAGE:该表存储了表、索引和外键中用到的列。
ROUTINES:该表存储了所有用户自定义函数和存储过程的信息。
SCHEMATA:该表包含了所有数据库的信息。
TABLES:该表用于存储所有表的信息。
USERS:该表存储了所有MySQL用户的信息,包括用户名、主机等。
除了上述表之外,information_schema中还包含了一些其他表,如VIEW_TABLE_USAGE、VIEW_ROUTINE_USAGE等,这些表也都提供了有关数据库和表的额外信息。
information_schema的作用非常重要,可以通过它查询到的元数据信息帮助我们更好地了解数据库中的结构和关系,从而更好的进行数据管理和数据操作。
回答3:
MySQL中的information_schema是一个系统数据库,它用于存储数据库中所有元数据的信息。元数据是关于数据库对象(表、列、索引等)的元信息,而information_schema中包含了这些元数据的集合,是MySQL中非常重要的数据库之一。
information_schema中包含许多数据表和视图,每个数据表或视图对应着一个元数据信息的集合。其中最重要的是以下几个:
1.数据库(SCHEMATA):包含数据库信息,如数据库名、默认字符集等;
2.表(TABLES):包含表的信息,如表名、表类型、创建时间等;
3.列(COLUMNS):包含表中所有列的信息,如列名、数据类型、长度等;
4.索引(STATISTICS):包含表的索引信息,如索引名、唯一性、索引类型等;
5.权限(USER_PRIVILEGES、SCHEMA_PRIVILEGES、TABLE_PRIVILEGES):包含数据库、表、列的权限信息。
除了上述常用的数据表和视图之外,还有一些其他的数据表或视图,如ROUTINES、PARAMETERS和KEY_COLUMN_USAGE。这些元数据信息可以通过SQL语句进行查询和分析,常用于数据库开发和管理中。
总之,information_schema是MySQL中非常重要的数据库之一,它存储了所有关于数据库对象的元数据信息,是数据库开发和管理的重要工具。
mysql information_schema.table
MySQL information_schema.tables
表结构和用途
关键字段解释
information_schema.tables
视图提供了有关数据库中所有表的元数据信息。以下是该视图中的重要字段及其含义:
- TABLE_CATALOG: 表所属目录名称,在 MySQL 中通常为空字符串[^1]。
- TABLE_SCHEMA: 表所在的数据库模式名,即数据库名称。
- TABLE_NAME: 表的具体名称。
- TABLE_TYPE: 表类型,可以是 BASE TABLE (基本表), VIEW (视图),或者 SYSTEM VERSIONED TABLE (系统版本化表)。
- ENGINE: 存储引擎的名字,例如 InnoDB, MyISAM 等。
- VERSION: 当前存储引擎分配给此表的数据文件格式版本号;对于大多数现代存储引擎来说这个值通常是 10。
- ROW_FORMAT: 数据行的物理存储格式,比如 Fixed, Dynamic, Compressed 等。
- TABLE_ROWS: 对于事务型表(如InnoDB),这是近似值;而对于非事务型表,则是一个确切的数量表示当前估计存在的记录数。
- AVG_ROW_LENGTH: 平均每条记录占用的空间大小(字节数)。
- DATA_LENGTH: 已经使用的空间总量,单位为字节,不包括索引所占空间。
- MAX_DATA_LENGTH: 可能的最大数据长度,取决于行格式以及是否有 BLOB 或 TEXT 列存在。
- INDEX_LENGTH: 所有索引占据的空间总和,同样以字节计。
- DATA_FREE: 尚未被利用但已经预留给未来扩展之用的空间量,也称为碎片空间或预留空间。
- AUTO_INCREMENT: 下一次自动增加列将会取到的新数值。
- CREATE_TIME: 创建时间戳,显示创建这张表的确切日期和时刻。
- UPDATE_TIME: 上次更改的时间戳,仅适用于某些类型的表,像MyISAM会更新这一项而InnoDB则不会维护它。
- CHECK_TIME: 如果曾经执行过检查操作的话这里会有相应的记录时间和状态信息。
使用场景举例
为了获取特定数据库下的所有表格列表并查看它们各自的存储引擎,可运行如下 SQL 查询语句:
SELECT TABLE_NAME, ENGINE FROM information_schema.TABLES WHERE TABLE_SCHEMA='your_database_name';
如果想要了解某个具体表有多少行数据,可以通过下面的方式查询:
SELECT TABLE_ROWS AS 'Estimated Row Count' FROM information_schema.TABLES WHERE TABLE_SCHEMA='your_database_name' AND TABLE_NAME='target_table';
通过这些字段可以帮助管理员更好地理解其管理下的各个表的状态、性能特征以及其他重要的属性。
相关推荐
















