水聆月

静月阁

导航

[转载]数据库、表空间、实例简介

 

一、数据库

 

数据库顾名思义是数据的集合,而Oracle则是管理这些数据集合的软件系统,它是 一个对象关系型的数据库管理系统。    

 二、表空间

 

表空间是Oracle对物理数据库上相关数据的逻辑映射。一个数据库在逻辑上被划分成一到若干个表空间,每个表空间包含了在逻辑上 相关联的一组结构。每个数据库至少有一个表空间(称之为system表空间)

每个表空间由同一磁盘上的一个或多个文件组成,这些文件叫数据文件 (datafile)。一个数据文件只能属于一个表空间。

数据库、表空间、数据文件的关系如下图所示(图片和部分文本引自《Oracle9i 概念手册》)

 

从上面这副图可以看出以下几点:

· 每一个数据库都从逻辑上被划分成一个或多个的表空间  

·每一个表空间由一到多个的数据文件构成 

·每一个表空间的存储大小等于其所有 数据文件的大小之和

·每一个数据库的存储大小等于其所有表空间的大小之和   

 三、实例

 

每一个运行中的数据库都对应着一个Oracle实例。当服务器上的Oracle数据 库启动时,Oracle首先会在内存中分配一片区域-称之为System Global Area(SGA),然后启动一个或多个的Oracle进程。

 

SGA和这些进程合起来就称为一个Oracle的实例。实例中的内存进程管理器来高效地访问数据库的数据,同时为单个或多个的用户提供服务。

 

一个数据库 可以由多个实例打开,但任何时刻一个实例只能打开一个数据库。多个实例可以同时运行在同一个机器上,它们彼此访问各自独立的物理数据库。

 

据库实例的示意图如下:(图片和部分文本引自《Oracle9i 概念手册》

 

 

 

当实例启动之后,Oracle会把这个实例以及其对应的物理数据库关联起 来,这个过程称为“加载”(Mounting)。这个时候 数据库将处于准备打开的状态,数据库在打开之后只有管理员才能够将其关闭,普通用户是无权关闭数据库的。

posted on 2011-03-10 13:13  水聆月  阅读(468)  评论(0)    收藏  举报