官网描述
模式(schema)就是系统模式(system schema)。它包含存储MySQL服务器运行时所需信息的表。一个广泛的分类是模式包含存储数据库对象元数据的数据字典表,以及用于其他操作目的的系统表。
细分更小的类别:
- 数据字典表
- 系统授权表
- 对象信息系统表
- 日志系统表
- 服务器端帮助系统表
- 时区系统表
- 复制系统表
- 优化器系统表
- 杂系统表
Schema概念
schema在数据库中表示的是数据库对象集合,它包含了数据库各种对象,比如:表、视图、存储过程、索引等等。一般情况下一个用户对应一个集合,所以为了区分不同的集合就需要给不同的集合起名字。通俗来讲schema名就相当于一个命名空间(目录),在不同schema下可以有相同名称的表、视图、索引等等。根据实际需要一个用户可以有多个schema,但是与用户名同名的schema都是由系统自动创建,并作为该用户缺省schema,其余schema需要手动创建。所以说schema看上去像用户名,例如当我们访问一个数据表时,如果该表没有指明属于哪个schema,系统就会自动的加上缺省的schema。
注意:不同数据库,由于系统架构不同,schema概念定义有所不同,但广义上相同,即schema包含了数据库各种对象,比如:表、视图、索引等等。
在不同的数据库中要创建的Schema方法是不一样的,但是它们有一个共同的特点就是都支持CREATE SCHEMA语句。
- MySQL:在MySQL数据库中,我们可以通过CREATE SCHEMA语句来创建一个数据库。
- Oracle Database:在Oracle中,由于数据库用户已经创建了一个模式,所以CREATE SCHEMA语句创建的是一个schema。
- kingbase:在kingbase中,由于数据库用户已经创建了一个模式,所以CREATE SCHEMA语句创建的是一个schema。