你是否经常见到schema,catalog这些单词,在数据库的背景下是什么意思呢?
两篇参考:http://www.iteye.com/problems/9738
http://luckybat.iteye.com/blog/259976
taopian (高级程序员) 2009-01-07 写道
schema是对一个数据库的结构描述。在一个关系型数据库里面,schema定义了表、每个表的字段,还有表和字段之间的关系。
catalog是由一个数据库实例的元数据组成的,包括基本表,同义词,索引,用户等等。
luckybat 写道
在一个数据库中可以有多个应用的数据表,这些不同应用的表可以放在不同的schema之中,同时,每一个schema对应一个用户,不同的应用可以以不同的用户连接数据库,这样,一个大数据库就可以根据应用把其表分开来管理。
不
同的schema之间它们没有直接的关系,不同的shcema之间的表可以同名,也可以互相引用(但必须有权限),在没有操作别的schema的操作根权
下,每个用户只能操作它自己的schema下的所有的表。不同的schema下的同名的表,可以存入不同的数据(即schema用户自己的数据)。引
自:http://utong.itpub.net/post/3610/58061
我另外结合MySQL官方的MySQL administrater数据库管理工具理解一下所谓的schema,catalog
我点了那个catalogs,下面就出来了所有的database。
想了一下,我这样来总结:
数据库:指的是说MySQL(或者说Oracle等)
schema: 指的是说当偶create database caiceclb时,caiceclb就是一个schema
catalog:
指的是所有的database目录,就像上图显示的那样,将MySQL原来的(mysql,infomation_schema)及偶后来create
database ****创建的的database的集合。(这个怎么取名字呢,不知道,以后或许就知道了)