MySQL的系统数据库

北战南征 提交于 2020-02-28 21:18:27

MySQL的系统数据库

使用MySQL客户端操作数据库时,只要稍微留神都会发现,除了我们建的库之外,还经常看到这个系统数据库的影子:

  information_schema

  performance_schema

  mysql

  sys

数据库元数据(metadata)就是描述数据的数据,在MySQL中就是描述database的数据。有哪些数据库、每个表有哪些表、表有多少字段、字段是什么类型、访问权限等等。

INFORMATION_SCHEMA提供对数据库元数据的访问,关于MySQL服务器的信息,例如数据库或表的名称,列的数据类型或访问权限。

 

PERFORMANCE_SCHEMA  ,主要用于收集数据库服务器性能参数。提供以下功能:

 1.提供进程等待的详细信息,包括锁、互斥变量、文件信息;

 2.保存历史的事件汇总信息,为提供MySQL服务器性能做出详细的判断;

 3.对于新增和删除监控事件点都非常容易,并可以随意改变mysql服务器的监控周期,例如(CYCLE、MICROSECOND)

通过以上得到的信息,DBA能够较明细得了解性能降低可能是由于哪些瓶颈。

 

mysql是核心数据库,类似于sql server中的master表,主要负责存储数据库的用户(账户)信息、权限设置、关键字等mysql自己需要使用的控制和管理信息。不可以删除,如果对mysql不是很了解,也不要轻易修改这个数据库里面的表信息。

 

sys 是mysql 5.7增加的系统数据库,这个库是通过视图的形式把information_schema 和performance_schema结合起来,查询出更加令人容易理解的数据。

sys数据库里面包含了一系列的存储过程、自定义函数以及视图来帮助我们快速的了解系统的元数据信息。

 

test,早先版本系统自动创建的测试数据库,是一个空数据库,没有任何表,可以删除。5.7版官方已经删除了test数据库。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!