我的MySQL AWS RDS实例中的这些意外数据库是什么?

时间:2015-01-07 21:39:09

标签: mysql amazon-web-services

在我的AWS RDS MySQL实例上,我有一些我没有在那里明确创建的数据库(并且从未在我的本地MySQL数据库或我曾经使用过的其他托管数据库上看到过)并且想知道它们是什么(以及它们是什么)我可以做些什么):

information_schema
mysql
performance_schema    
innodb

前三个填充了我不理解的数据(并且在我的MySQL工具中单独列出;例如我无法单独控制它们的权限),而最后一个是空的。我可以删除innodb吗?其他人是什么(我认为我应该让他们独自一人)?


原谅可能会成为一个天真的MySQL或AWS问题;我对两者都很陌生。

1 个答案:

答案 0 :(得分:2)

这些都很正常。

每个MySQL安装都有mysqlinformation_schema个数据库。如果你看不到它们,那么要么你没有权限看到它们,要么你用来连接到MySQL服务器的任何东西都隐藏它们。大多数较新的MySQL安装也有performance_schema

RDS上的innodb数据库实际上并不是一个数据库,但它出现在列表中,因为RDS的设计与MySQL服务器的内部概念相互作用,每个目录里面都有假定该datadir是一个数据库。 InnoDB内部使用的文件存储在那里,即使"数据库"本身似乎是空的。只是无视它。

mysql数据库包含MySQL内部使用的表,包括授权表和时区表,以及某些特定于RDS的存储过程形式的DBA工具,这些工具因访问受限而需要与独立的MySQL服务器相比,即使是管理员帐户也必须使用RDS实例。

http://dev.mysql.com/doc/refman/5.6/en/information-schema.html http://dev.mysql.com/doc/refman/5.6/en/performance-schema.html http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.MySQL.CommonDBATasks.html