日期:2014-05-16  浏览次数:20386 次

Oracle中易混淆的几个概念

欢迎转载,转载请指明出处http://blog.csdn.net/hncsy403,谢谢


1.实例和数据库

实例包括我们为了运行数据库执行和分配的所有进程和内存结构

Oracle实例是系统全局区和后台进程的组合

数据库只有调入实例所包括的内存和进程中才可以使用

Oracle要运行范围广泛的各种进程来管理它的数量庞大的事务处理


数据库是指运行数据库所需要的所有文件

也就是包括数据文件,重做文件,控制文件和临时文件

当使用Oracle的时候,首先要将这些数据库文件导入到实例所包含的进程和内存当中

然后可以对内存中的数据进行事务处理

最后将事务处理提交到数据库文件当中




2.用户和模式

用户是能够唯一标识一组信任凭证的名称和密码组合

任何使用名称和密码组合访问Oracle数据库的用户都会为指定的用户作为访问

Oracle中的用户就是用于登录Oracle的命名帐号

Oracle是一个多用户系统,为了保证数据库系统的安全,系统配置了很好的安全机制

每一个Oracle数据库都有一个用户表,记载着每一个用户的相关信息,一旦用户进入了系统

Oracle就会通过这张表来检查用户的合法性

在Oracle中创建用户后,一般要为该用户指定默认的表空间及创建属于该用户的对象

如果要是没有为该用户创建属于他自己的对象,这个用户的创建就没有意义


模式是对用户所创建的数据库对象的总称

Oracle数据库中,任何一个数据库对象都属于一个特定的用户

一个用户及其所拥有的对象即称为模式

模式中的对象包括表,视图,索引,序列,存储过程和程序包等

每一个用户都与相同名称的模式相关联,因此,模式又称为用户模式

当用户创建数据库应用时,应用中可能需要所有表,约束,索引,触发器,和其他对象都应该组织到单独用户模式中

这要通过建立用户帐号,并且让它称为Oracle中所有这些对象的所有者来实现


模式本身不是对象,模式只是一个用来描述属于特定用户的对象集合术语

用户和模式是一一对应的


3.用户和角色

用户是用于登录Oracle的命名帐号

当我们安装Oracle的时候,就会建立两个用户SYS和SYSTEM

它们只应用于自己的数据库对象,所以我们在使用Oracle的时候,要为数据创建一个自己的用户帐号

当我们创建自己的用户之后,就可以为它赋予一些特权


Oracle数据库角色就是一组相关权限的命名组合

使用角色的最主要目的是简化权限管理

使用角色可以大大地降低用户特权地维护负担

角色可以是对象特权或者 系统特权的命名组合


角色是一组权限的组合,我们可以将角色赋予给用户,从而让用户拥有角色所拥有的权限

每个用户可以有多个权限,我们是为了简化用户的权限管理,所以才使用角色


4.数据字典和表

表是数据库中用来存储数据的对象,包含了行和列

用户可以将表想象成表单的样子,水平的排列是行,垂直的排列是列