1、我们知道数据库和表是描述和存储用户数据的,那么问题来了,对于数据库和表,谁来描述和存储它们呢?
2、这就是模式做的事情。mysql安装之后,有一个默认的数据库,information_schema,这个里面保存了数据库和表的内容,需要注意的是,information_schema还包含了自身的内容。
3、数据库SCHEMATA保存了所有的数据库,TABLES保存了所有的表。
4、我们通过查询information_schema,可以列出数据库,表等信息。但是,一般不直接访问内部的表,而是通过show命令。比如show databases; show tables; show columns from xxx,对于show columns from xxx, 还有一个简写方式,desc xxx。
5、需要注意的是,information_schema并不是一个物理表,而是保存在内存中。
6、除了information_schema,还有几个自带的数据库,mysql 保存用户、权限、关键字等。test是一个实例数据库,高版本的mysql还有一个performance_schema,保存性能优化有关的内容。