mysql中的系统库有哪些_mysql系统数据库介绍

来源:这里教程网 时间:2026-02-28 20:42:58 作者:
MySQL 启动后默认创建 4 个核心系统库:**mysql、information_schema、performance_schema 和 sys**。它们不存放业务数据,而是支撑数据库自身运行、管理、监控与元数据查询的关键基础设施。

mysql 库:权限与系统配置的中枢

这是 MySQL 的“管理员数据库”,存储用户账号、权限规则、时区、日志开关、存储过程定义等运行时必需的配置信息。

权限表是重点:user(全局权限)、db(库级)、tables_priv(表级)、columns_priv(列级)、procs_priv(存储过程/函数)等,共同构成访问控制体系; 不建议直接 DML 修改:应使用
CREATE USER
GRANT
REVOKE
等语句操作权限,避免破坏内部一致性;
还包含日志表:如
general_log
slow_log
(需开启对应日志功能才会写入);
复制与优化器相关表也在此:例如
slave_master_info
innodb_table_stats
等。

information_schema 库:数据库的“活字典”

它提供只读的元数据视图,是查询数据库结构最标准的 SQL 接口,替代了大量

SHOW
命令。

所有表本质是视图,数据来自内存结构,无物理文件,重启后内容自动刷新; 常用表举例
TABLES
(查库表数量/大小)、
COLUMNS
(字段类型与约束)、
PROCESSLIST
(等效
SHOW PROCESSLIST
)、
INNODB_TRX
(当前事务)、
STATISTICS
(索引详情);
支持跨库统计:比如用
SELECT table_schema, COUNT(*) FROM information_schema.TABLES GROUP BY table_schema
快速盘点各库表数。

performance_schema 库:性能数据的“实时探针”

专注采集服务器内部事件,为性能诊断提供底层依据,所有数据驻留在内存中,重启即清空。

默认在 MySQL 5.7+ 开启,5.5 版本起引入但需手动启用(配置
performance_schema=ON
);
覆盖维度广:SQL 执行阶段耗时(parse、execute、sort)、线程等待、锁争用、I/O 次数与延迟、内存分配等; 可动态开关采集项:通过修改
setup_instruments
setup_consumers
表实时调整监控粒度,减少开销;
不用于长期归档,适合定位瞬时瓶颈,比如某条慢查询卡在哪一环节。

sys 库:性能分析的“快捷入口”

基于

performance_schema
information_schema
构建的一组预定义视图与函数,把原始监控数据转化为可读性强、目标明确的汇总结果。

MySQL 5.7.6 起内置,非强制组件,某些精简部署可能未安装; 典型视图示例
sys.session
(活跃会话快照)、
sys.statement_analysis
(SQL 执行统计排行)、
sys.io_by_thread_by_latency
(线程 I/O 延迟分布);
降低使用门槛:无需拼接多层 JOIN 或理解复杂的 instruments 表结构,一条
SELECT
就能获取关键指标。

相关推荐