数据库实例是有数据文件加一系列服务进程组成的,那建两个数据库实例是不是就是由两组数据库服务进程操作一组数据文件啊?
如何能建立两个数据库实例呢?建两个数据库实例是不是可以起到保险的作用,当其中的一个坏掉了,直接使用备用实例?

解决方案 »

  1.   

    只要建一个实例并对其数据进行定时备份(如exp)即可。当然条件可以的话,双机热备份实时可靠性更佳。同一机中采用两个数据库实例其实是起不到保险作用的。
      

  2.   

    除了rac,每个实例只能操作一组数据文件,这组数据文件不能被其它实例操作.要建立两个实例,就会创建两组的数据文件.如果想实现你的多个实例操作一组数据的情况,需要建立rac方式的数据库.
      

  3.   

    数据库实例是有数据文件加一系列服务进程组成的
    ========================================
    实例是服务进程 + 内存结构,不包括数据文件。那建两个数据库实例是不是就是由两组数据库服务进程操作一组数据文件啊?
    ==============================================================
    同一个服务器上的两个实例不允许管理同一组数据文件。
    不同服务器上的两个实例,通过使用都可以访问到的存储设备,可以管理同一组数据文件(通常不使用文件,而用裸设备)。这就是集群,oracle 叫 RAC。如何能建立两个数据库实例呢? 
    ===========================
    windows 平台下使用 oradim 命令。建两个数据库实例是不是可以起到保险的作用,当其中的一个坏掉了,直接使用备用实例?
    =======================================
    上面说过了,不能简单的建立两个实例来实现高可用性,需要做 RAC
      

  4.   

    前面几位老师讲的很好了,最后问一个问题,数据库和实例是一一对应关系吗,如果不是,怎么能单独创建实例呢?
    例如现在创建了一个数据库,有一个实例orac1对数据文件data1进行操作,
    在停掉实例orac1的情况下,能够另外创建一个实例orac2操作data1吗?