实例与数据库的关系,实例与数据库的关系是什么

http://www.itjxue.com  2023-01-06 06:06  来源:未知  点击次数: 

什么是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,则记录相应数据库的名字。

数据库与实例的关系

一个服务器上可以安装多个实例,这是正确的。在安装的时候不指定实例名,选择默认实例的话,那默认的实例就是MSSQLSERVER,在安装过程中下图选择默认实例还是自定义实例:

安装实例后还想继续安装另一个实例,只需要继续单击安装文件SETUP.EXE,在上面的界面选择命名实例,换一个名字即可。

当然一个服务器除了可以安装SQL 2005的多个实例外,还可以安装不同版本的SQL Server,在服务器上可以同时安装SQL 2000,2005,2008,2008r2,2012等等(不会冲突)。至于安装过程中出现各种错误,并不能否定不能同时安装这些版本,只能说明是你的系统或者你安装时候各种配置没有到位。

也就是说如果服务器内存足够大,可以安装SQL Server的多个版本的多个实例。

Oracle中数据库和数据库实例的区别和联系

实例就是一组操作系统进程(或者是一个多线程的进程)以及一些内存。这些进程可以操作数据库;而数据库只是一个文件集合(包括数据文件、临时文件、重做日志文件和控制文件)。在任何时刻,一个实例只能有一组相关的文件(与一个数据库关联)。大多数情况下,反过来也成立:一个数据库上只有一个实例对其进行操作。不过,Oracle的真正应用集群(Real Application Clusters,RAC)是一个例外,这是Oracle提供的一个选项,允许在集群环境中的多台计算机上操作,这样就可以有多台实例同时装载并打开一个数据库(位于一组共享物理磁盘上)。由此,我们可以同时从多台不同的计算机访问这个数据库。

oracle里实例和数据库之间的关系

简单说吧,书上的理论太绕。

数据库软件是一个数据库软件,就好像你的word,你安装的word,你能说你有文档了么?明显不能,只是你能够建立文档了。数据库软件就相当于word软件。

实例,指的是内存和具体的内容。还是用word举例,你利用word软件,新建立了一个word文档,这个word文档就是一个实例。有一部分内存被分配给这个word文档进行工作,就算你没有在上面写字,那么这个word文档也是一个实例,因为它存在。而后面的表空间(tablespace),数据文件(datafile),控制文件(controlfile),表(table)你可以认为都是数据这个实例的。

如果你在建立一个新word文档,那么这个新word文档,和上面你建立的这个word文档无关,因为两个文档确实没什么关系。当然不排除dblink,相当于word中的引用,不是完全一样,可是大概可以这样理解。

至于你的具体数据,就是你在word中书写的字。

一般情况下,这里这样理解,虽然有那么点不同,可是这么立即一般应用是没有问题的。

(责任编辑:IT教学网)

更多

推荐新手入门文章