MySQL中的默认数据库
字数 1286 2025-08-15 21:34:03
MySQL默认数据库详解
一、MySQL默认数据库概述
MySQL安装后会自带四个系统数据库:
- information_schema - 存储所有数据库的元数据信息
- performance_schema - 收集数据库服务器性能参数
- mysql - 存储用户权限、参数等核心信息
- sys - 简化performance_schema的复杂度,便于DBA使用
查看所有数据库命令:
SHOW DATABASES;
二、information_schema数据库
1. 基本概念
information_schema提供了访问数据库元数据的方式,包含MySQL服务器维护的所有其他数据库的信息,如:
- 数据库名和表名
- 列的数据类型
- 访问权限等
2. 主要系统视图
(1) SCHEMATA表
存储所有数据库的基本信息:
- 数据库名
- 编码类型
- 路径等
(2) TABLES表
提供数据库中表的信息:
- 表所属的schema
- 表类型(基本表或系统视图)
- 表引擎
- 行数
- 创建和更新时间
SHOW TABLES FROM 数据库名的结果来源于此表。
(3) COLUMNS表
提供表中列的信息:
- 列在表中的位置
- 数据类型
- 编码类型
- 权限
- 注释等
SHOW COLUMNS FROM 数据库名.表名的结果来源于此表。
三、mysql数据库
mysql是核心数据库,类似于SQL Server中的master表,存储:
- 用户信息
- 权限设置
- 关键字
- 控制和管理信息
常用操作:
USE mysql;
SHOW TABLES;
重要表:
- user表:存储用户信息,可修改root用户密码
四、performance_schema数据库
1. 主要功能
- 收集数据库服务器性能参数
- 提供进程等待的详细信息(锁、互斥变量、文件信息等)
- 保存历史事件汇总信息
- 便于添加/删除监控事件点
- 可调整监控周期(如CYCLE、MICROSECOND)
2. 特点
- 所有表的存储引擎均为PERFORMANCE_SCHEMA
- 用户不能创建该存储引擎的表
- MySQL 5.7默认开启
五、sys数据库
1. 主要特点
- 所有数据源来自performance_schema
- 目的是降低performance_schema的复杂度
- 帮助DBA更好地理解数据库运行情况
六、版本差异
- MySQL 5.0以上:存在INFORMATION_SCHEMA数据库
- MySQL 5.0以下:没有INFORMATION_SCHEMA数据库
七、总结
| 数据库 | 主要用途 | 重要特点 |
|---|---|---|
| information_schema | 存储元数据 | 只读视图,包含数据库、表、列信息 |
| mysql | 存储核心信息 | 包含用户、权限等关键数据 |
| performance_schema | 性能监控 | 收集详细性能参数 |
| sys | 简化性能数据展示 | 基于performance_schema的数据 |
理解这些默认数据库的结构和功能对于MySQL数据库管理和性能调优至关重要。