information_schema
、mysql
和 performance_schema
。information_schema
存储数据库的元信息,mysql
包含用户权限数据,而performance_schema
用于收集数据库性能数据。MySQL的默认数据库
(图片来源网络,侵删)MySQL作为一种广泛使用的开源关系型数据库管理系统,其在安装时会自带几个默认的数据库,这些数据库对于整个系统的运行、管理及性能监控起着至关重要的作用,下面将详细探讨这些默认数据库的具体作用和重要性。
1.information_schema
这个数据库不是真正存储数据的数据库,而是一个包含关于其他数据库元数据的库,其主要用途是提供一个用于检索数据库元数据的信息集合,例如数据库名、表结构、列的数据类型以及访问权限等。
表格和视图
TABLES
: 提供数据库中表的信息。
COLUMNS
: 详细描述每个表中的列信息。
STATISTICS
: 包括有关表索引的信息。
2.mysql
mysql数据库是真正的系统数据库,类似于SQL Server中的master数据库,它主要负责存储用户权限、设置、关键字以及其他一些控制和管理信息。
系统表
user
: 存储用户账户和全局权限。
db
: 数据库级的安全权限。
tables_priv
和columns_priv
: 分别存储表级和列级的权限。
数据字典
(图片来源网络,侵删)从MySQL 8.0开始,系统表使用InnoDB存储引擎,以提升性能和可靠性。
3.performance_schema
主要用于收集数据库服务器的性能参数,其目的是提供一个底层的监控功能,以便对MySQL服务器的运行时状态进行诊断和调优。
性能数据
进程等待的详细信息(如锁、互斥变量等)。
历史的事件汇总信息。
4.test
这是一个没有预装任何内容的数据库,通常用于开发或教学中测试目的,用户可以自由地在此数据库中进行各种实验性操作,而不会影响其他重要数据。
相关问答FAQs
Q1: 如何查看MySQL服务器上所有可用的数据库?
A1: 可以通过执行SQL命令SHOW DATABASES;
来查看MySQL服务器上所有可用的数据库,包括系统数据库和用户自建的数据库。
Q2: 为什么需要performance_schema数据库?
A2:performance_schema
主要用于监控系统性能和运行状况,它提供了详细的性能数据,如事件等待、线程信息等,帮助数据库管理员找出可能的性能瓶颈并进行优化调整。