在 MySQL 数据库管理系统中,除了用户创建的数据库外,还存在四个由系统自动创建的数据库,它们是:mysql、performance_schema、information_schema、sys。
mysql 数据库
mysql 数据库主要存储系统相关信息,如用户权限、数据库和表的定义等。它包含许多重要的表,如 user、db、tables,可以帮助 DBA 管理和监视 MySQL 服务器。
information_schema 数据库
information_schema 数据库提供有关 MySQL 数据库服务器中所有对象的元数据。它包含许多视图,可以帮助用户了解数据库的结构、数据类型和约束。例如,COLUMNS 视图包含所有表的列信息,TABLES 视图包含所有表的元数据。
performance_schema 数据库
performance_schema 数据库提供有关 MySQL 数据库服务器性能的实时信息。它包含许多表和视图,可以帮助 DBA 识别性能瓶颈和优化查询。例如,events_statements_summary 表汇总了所有语句的执行统计信息,而 events_waits_current 表显示了当前正在等待的语句。
sys 数据库
sys 数据库主要存储系统内部信息,如 InnoDB 存储引擎的元数据。它通常不对 DBA 开放,也不应该被修改。但是,它对于理解 InnoDB 存储引擎的内部工作原理非常有用。
了解这些系统数据库的好处
了解 MySQL 中的四个系统数据库的好处包括:
管理和监视 MySQL 服务器
获取数据库对象的元数据
识别性能瓶颈和优化查询
了解 InnoDB 存储引擎的内部工作原理
通过充分利用这些系统数据库,DBA 可以更好地管理和优化 MySQL 数据库服务器,从而确保应用程序的高性能和可用性。