oracle中实例与数据库的概念解释

很容易混淆,这就是“实例 ”(instance)和“数据库 ”(database)。作为Oracle术语,这两个词的定义如下:

q 数据库 (database):物理操作系统文件或磁盘(disk)的集合。使用Oracle 10g的自动存储管理(Automatic Storage Management,ASM)或RAW分区时,数据库 可能不作为操作系统中单独的文件,但定义仍然不变。

q 实例 (instance):一组Oracle后台进程/线程以及一个共享内存区,这些内存由同一个计算机上运行的线程/进程所共享。这里可以维护易失的、非持久性内容(有些可以刷新输出到磁盘)。就算没有磁盘存储,数据库 实例 也能存在。也许实例 不能算是世界上最有用的事物,不过你完全可以把它想成是最有用的事物,这有助于对实例数据库 划很容易混淆,这就是“实例 ”(instance)和“数据库 ”(database)。作为Oracle术语,这两个词的定义如下:

q 数据库 (database):物理操作系统文件或磁盘(disk)的集合。使用Oracle 10g的自动存储管理(Automatic Storage Management,ASM)或RAW分区时,数据库 可能不作为操作系统中单独的文件,但定义仍然不变。

q 实例 (instance):一组Oracle后台进程/线程以及一个共享内存区,这些内存由同一个计算机上运行的线程/进程所共享。这里可以维护易失的、非持久性内容(有些可以刷新输出到磁盘)。就算没有磁盘存储,数据库 实例 也能存在。也许实例 不能算是世界上最有用的事物,不过你完全可以把它想成是最有用的事物,这有助于对实例数据库 划清界线。

这两个词有时可互换使用,不过二者的概念完全不同。实例数据库 之间的关系是:数据库 可以由多个实例 装载和打开,而实例 可以在任何时间点装载和打开一个数据库 。实际上,准确地讲,实例 在其整个生存期中最多能装载和打开一个数据库 !稍后就会介绍这样的一个例子。

是不是更糊涂了?我们还会做进一步的解释,应该能帮助你搞清楚这些概念。实例 就是一组操作系统进程(或者是一个多线程的进程)以及一些内存。这些进程可以操作数据库 ;而数据库 只是一个文件集合(包括数据文件、临时文件、重做日志文件和控制文件)。在任何时刻,一个实例 只能有一组相关的文件(与一个数据库 关联)。大多数情况下,反过来也成立:一个数据库 上只有一个实例 对其进行操作。不过,Oracle的真正应用集群(Real Application Clusters,RAC)是一个例外,这是Oracle提供的一个选项,允许在集群环境中的多台计算机上操作,这样就可以有多台实例 同时装载并打开一个数据库 (位于一组共享物理磁盘上)。由此,我们可以同时从多台不同的计算机访问这个数据库 。Oracle RAC能支持高度可用的系统,可用于构建可扩缩性极好的解决方案。
q 数据库 可以由一个或多个实例 (使用RAC)装载和打开。 清界线。

这两个词有时可互换使用,不过二者的概念完全不同。实例数据库 之间的关系是:数据库 可以由多个实例 装载和打开,而实例 可以在任何时间点装载和打开一个数据库 。实际上,准确地讲,实例 在其整个生存期中最多能装载和打开一个数据库 !稍后就会介绍这样的一个例子。

是不是更糊涂了?我们还会做进一步的解释,应该能帮助你搞清楚这些概念。实例 就是一组操作系统进程(或者是一个多线程的进程)以及一些内存。这些进程可以操作数据库 ;而数据库 只是一个文件集合(包括数据文件、临时文件、重做日志文件和控制文件)。在任何时刻,一个实例 只能有一组相关的文件(与一个数据库 关联)。大多数情况下,反过来也成立:一个数据库 上只有一个实例 对其进行操作。不过,Oracle的真正应用集群(Real Application Clusters,RAC)是一个例外,这是Oracle提供的一个选项,允许在集群环境中的多台计算机上操作,这样就可以有多台实例 同时装载并打开一个数据库 (位于一组共享物理磁盘上)。由此,我们可以同时从多台不同的计算机访问这个数据库 。Oracle RAC能支持高度可用的系统,可用于构建可扩缩性极好的解决方案。
q 数据库 可以由一个或多个实例 (使用RAC)装载和打开。

 

一个Oracle实例 (Oracle Instance)有一系列的后台进程(Backguound Processes)和内存结构(Memory Structures)组成。为了能访问数据库 ,必须启动实例
对于第一次接触“实例 ”和“数据库 ”的朋友来说,容易把二者混淆。实例 是“内存”和“后台进程”的集合。数据库 是数据的物理存储。特别注意,一个实例 可以用于一个数据库 ,多个实例 也可以同时用于一个数据库实例数据库 的关系是一对多的关系。
举个例子,如果把数据库 比作一架飞机,实例 就是飞机的发动机。那么,一台发动机可以驱动飞机,两台发动机也可以同时驱动一架飞机。
多个“实例 ”同时驱动一个“数据库 ”的架构叫“集群(Oracle real application clusters,简称RAC)”,这是Oracle的一种高端应用,如果结合磁盘阵列的保护机制,RAC能最大限度的保护我们的应用不间断运行,数据不丢失。

 

把你理解的数据库 分成两部分。实例 是由访问数据库 的一组进程和内存组成。而数据库 则是一系列储存数据的文件。 一个数据库 可以被一个实例 或者多个实例 打开(RAC)。 访问数据库 的时候,你连上的是一个实例 ,通过实例 访问到数据库 中的数据。

(1)安装数据库 时,实例 是自动被安装了吗?
是。
(2)登陆sqlplus后,等于登陆了数据库 ,此时实例 是否启动?
如果可以正常登陆,实例 一定是被打开了。
(3)可以这样理解实例数据库 吗:实例 就是在打开数据库 后所进行的一切操作,退出某个数据库 ,就相当于关闭了这个实例
不是。除非你关闭实例 ,否则进程和内存还会一直存在,给连接到数据库 的用户提供服务。
(4)可以有几个实例
和版本有关。 9i和10gR1中,一个数据库 最多可以被63个实例 打开。 10gR2最多100个

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值