400 028 6601

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

怎么理解并掌握mysql中的information_schema

本篇内容介绍了“怎么理解并掌握MySQL中的information_schema”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

成都创新互联专业为企业提供滨城网站建设、滨城做网站、滨城网站设计、滨城网站制作等企业网站建设、网页设计与制作、滨城企业网站模板建站服务,十载滨城做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

| 什么是information_schema

information_schema提供了对数据库元数据、统计信息、以及有关MySQL Server的信息访问(例如:数据库名或表名,字段的数据类型和访问权限等)。该库中保存的信息也可以称为MySQL的数据字典或系统目录。

针对information_schema下的表的查询操作可以替代一些show查询语句(例如:SHOW DATABASES,SHOW TABLES等),与使用show语句相比,通过查询information_schema下的表获取数据有以下优势:

访问information_schema需要的权限

PS:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

# 语法

Syntax:

SHOW [GLOBAL | SESSION] VARIABLES

[LIKE 'pattern' WHERE expr]

# 示例1

root@localhost : information_schema 12:20:31> show variables like '%log_bin%';

+---------------------------------+----------------------------------------------------+

| Variable_name                  | Value                                              |

+---------------------------------+----------------------------------------------------+

| log_bin                        | ON                                                |

| log_bin_basename                | /home/mysql/data/mysqldata1/binlog/mysql-bin      |

| log_bin_index                  | /home/mysql/data/mysqldata1/binlog/mysql-bin.index |

| log_bin_trust_function_creators | ON                                                |

| log_bin_use_v1_row_events      | OFF                                                |

| sql_log_bin                    | ON                                                |

+---------------------------------+----------------------------------------------------+

rows in set (0.00 sec)

# 实例2

root@localhost : information_schema 12:21:41> show variables where Variable_name like 'log_bin%' and Value='ON';

+---------------------------------+-------+

| Variable_name                  | Value |

+---------------------------------+-------+

| log_bin                        | ON    |

| log_bin_trust_function_creators | ON    |

+---------------------------------+-------+

rows in set (0.00 sec)

# 注意,likewhere子句可单独使用,但要同时使用wherelike子句时,like子句必须在where之后

| information_schema 组成对象

information_schema下的所有表都是使用的Memory和InnoDB存储引擎,且都是临时表,不是持久表,在数据库重启之后这些数据会丢失,在MySQL 的4个系统库中,也是唯一一个在文件系统上没有对应库表的目录和文件的系统库。

下面我们按照这些表的各自用途的相似度,我们把information_schema下的表做了如下归类,本期我们先大致了解下information_schema系统库中都有哪些表,这些表大致都有什么用途。

1. Server层统计信息字典表

COLUMNS:

KEY_COLUMN_USAGE:

REFERENTIAL_CONSTRAINTS:

STATISTICS:

TABLE_CONSTRAINTS:

FILES:

ENGINES:

TABLESPACES:

SCHEMATA:

2. Server层表级别对象字典表

VIEWS:

TRIGGERS:

TABLES:

ROUTINES:

PARTITIONS:

EVENTS:

PARAMETERS:

3. Server 层混杂信息字典表

GLOBAL_STATUS、GLOBAL_VARIABLES、SESSION_STATUS、SESSION_VARIABLES:

OPTIMIZER_TRACE:

PLUGINS:

PROCESSLIST:

PROFILING:

CHARACTER_SETS:

COLLATIONS:

COLLATION_CHARACTER_SET_APPLICABILITY:

COLUMN_PRIVILEGES:

SCHEMA_PRIVILEGES:

TABLE_PRIVILEGES:

USER_PRIVILEGES:

4. InnoDB 层系统字典表

INNODB_SYS_DATAFILES:

INNODB_SYS_VIRTUAL:

INNODB_SYS_INDEXES:

INNODB_SYS_TABLES:

INNODB_SYS_FIELDS:

INNODB_SYS_TABLESPACES:

INNODB_SYS_FOREIGN_COLS:

INNODB_SYS_COLUMNS:

INNODB_SYS_FOREIGN:

INNODB_SYS_TABLESTATS:

5. InnoDB 层锁、事务、统计信息字典表

INNODB_LOCKS:

INNODB_TRX:

INNODB_BUFFER_PAGE_LRU:

INNODB_LOCK_WAITS:

INNODB_TEMP_TABLE_INFO:

INNODB_BUFFER_PAGE:

INNODB_METRICS:

INNODB_BUFFER_POOL_STATS:

6. InnoDB 层全文索引字典表

INNODB_FT_CONFIG:

INNODB_FT_BEING_DELETED:

INNODB_FT_DELETED:

INNODB_FT_DEFAULT_STOPWORD:

INNODB_FT_INDEX_TABLE:

INNODB_FT_INDEX_CACHE:

7. InnoDB 层压缩相关字典表

INNODB_CMP和INNODB_CMP_RESET:

INNODB_CMP_PER_INDEX和INNODB_CMP_PER_INDEX_RESET:

INNODB_CMPMEM和INNODB_CMPMEM_RESET:

“怎么理解并掌握mysql中的information_schema”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!


分享名称:怎么理解并掌握mysql中的information_schema
浏览路径:http://mbwzsj.com/article/pccpgi.html

其他资讯

让你的专属顾问为你服务