MySQL的4个系统数据库介绍
MYSQL在一定程度有些东西和SQL Server相似,另一方面很多东西又与Oracle有相似的东西;今天分享下和SQL Server稍微相似的数据库管理方式,即数据库的方式管理数据库。
1. INFORMATION_SCHEMA数据库:此数据库提供了访问数据库元数据的方式。
元数据是关于数据的数据,如database name或table name,列的数据类型,或访问权限等。有些时候用于表述该信息的其他术语包括“数据词典”和“系统目录”。
例如:
mysql> SELECT table_name, table_type, engine FROM information_schema.tables
-> WHERE table_schema = \’HR\’
-> ORDER BY table_name DESC;
其中保存着MySQL服务器所维护的所有其他数据库的信息和SQL Server中的Master数据库类型。在INFORMATION_SCHEMA中有几个只读表。其实它们是视图,不是基本表,因此你将无法看到与之相关的任何文件。
每个MySQL用户均有权访问这些表,但仅限于表中的特定行,在这类行中含有用户具有恰当访问权限的对象。
访问数据库information_schema中所含表的唯一方式是使用SELECT语句。因为元数据中的内容不能随便进行insert、update与delete等的。
它反映的是关于mysql数据库的数据的相关信息,若可随意修改会导致数据库是不能正常使用的。若你要修改关于表和字段的描述信息,是不能直接在information_schema中修改的,而是需要对数据库中相应的表进行修改,修改某一数据库对象之后,information_schema的数据也会自动更新。
2. PERFORMANCE_SCHEMA数据库: 此数据库为数据库性能优化提供重要的参考信息, 这个功能默认是关闭的,需要在my.ini或my.cnf(linux系统中)中开启此功能,此开启参数是静态设置,不用在运行时动态设置立即生效。其中包括一些当前事件信息,历史事件信息与汇总统计信息。通过数据库结合慢查询、及explain语句可进行一般性
的性能优化与语句改进。
3. MYSQL数据库: 该数据库也是个核心数据库,存储用户的权限信息与帮助信息。不可以随意修改其内容。
4.TEST数据库: 这个是MYSQL在后期版本之后才有的这个数据库,这个数据库不重用,安装MYSQL后系统自动建立的这个数据库,默认情况下里面是空的,不存在任何数据库对象,供用户测试使用,用户也可以把它删除,对系统是没有任何影响的。
REMARK: IT随笔,若转载请注明出去,谢谢!
TerryXia