什么是oracle实例,什么是oracle数据库,二者有什么区别?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是oracle实例,什么是oracle数据库,二者有什么区别?相关的知识,希望对你有一定的参考价值。

谢谢大家的回答啊 !请回答的 详细 点 !谢谢

数据库(database):物理操作系统文件或磁盘( disk)的集合。使用Oracle 10g 的自动存储管理(Automatic Storage Management,ASM)或RAW 分区时,数据库可能不作为操作系统中单独的文件,但定义仍然不变。
实例(instance):一组Oracle 后台进程/线程以及一个共享内存区,这些内存由同一个计算机上运行的线程/进程所共享。这里可以维护易失的、非持久性内容(有些可以刷新输出到磁盘)。就算没有磁盘存储,数据库实例也能存在。也许实例不能算是世界上最有用的事物,不过你完全可以把它想成是最有用的事物,这有助于对实例和数据库划清界线。
这两个词有时可互换使用,不过二者的概念完全不同。实例和数据库之间的关系是:数据库可以由多个实例装载和打开,而实例可以在任何时间点装载和打开一个数据库。实际上,准确地讲,实例在其整个生存期中最多能装载和打开一个数据库!
一般来说,我们的一个数据库对应一个实例,但在集群RAC情况下,共享数据库文件时,一个数据库是可以被多个实例同时使用的。
同一时间,一个实例只能打开一个数据库,也就是一个实例只能操作或管理一个数据库;通常,同一时间,一个数据库只能被一个实例打开,但RAC情况除外。

安装oracle时,通常会安装一个实例——数据库对(当然可以装多对),而且他们的名字相同(也就是实例和数据库名字相同),他们的名字当然可以不同,不管相不相同,他们的联系是通过xxx/pfile/init.ora初始化文件联系的。因为xxx就是实例的名字,而xxx.ora中的db_name,则记录相应数据库的名字。
参考技术A 这个问题如果回答得形象点就是:

一个数据库可以包含一个或者多个实例

实例的定义:由操作系统后台进程和分配的内存区域构成。说

得简单点就是oracle在nomount状态就分配了内存区域,一个实

例也就差不多快形成了。本回答被提问者采纳
参考技术B 数据库在实例里面

以上是关于什么是oracle实例,什么是oracle数据库,二者有什么区别?的主要内容,如果未能解决你的问题,请参考以下文章

oracle 实例

oracle数据库多个实例有啥用

什么是数据库的实例instance

安装oracle数据库过程中sid指的是啥

Oracle数据库实例及其相关概念

安装数据oracle,改了实例名,使用jdbc怎么写?