服务器 频道

精讲-Linux x86 安装Oracle 10g

      
    这一部分介绍了三种准备共享磁盘以用于 RAC 的方法:

    1. Oracle 集群文件系统 (OCFS)
    2. 自动存储管理器 (ASM)
    3. 原始设备

Oracle 集群文件系统 (OCFS) 第 1 版


    OCFS 第 1 版是原始设备的一个优秀替代品。 它不仅更易于管理和维护,而且克服了 255 个原始设备的限制。 但是,它并不是一个通用集群文件系统。 它只能用于存储以下类型的文件:
    Oracle 数据文件
    联机重做日志
    归档重做日志
    控制文件
    Spfile
    CRS 共享文件(Oracle Cluster Registry 和 CRS voting disk)。

    获取 OCFS
   
转到 http://oss.oracle.com/projects/ocfs 并下载适于您的 Linux 版本的 OCFS RPM。 您需要三个 RPM: ocfs-support、ocfs-tools 和 ocfs-kernel-specific 模块。 要确定您所需要的内核专用模块,可使用 uname -r。
# uname -r
2.4.21-15.0.2.ELsmp

对于本示例,我下载了:
ocfs-support-1.0.10-1.i386.rpm
ocfs-tools-1.0.10-1.i386.rpm
ocfs-2.4.21-EL-smp-1.0.12-1.i686.rpm

    安装 OCFS

# rpm -Uvh ocfs-support-1.0.10-1.i386.rpm \
ocfs-tools-1.0.10-1.i386.rpm \
ocfs-2.4.21-EL-smp-1.0.12-1.i686.rpm
Preparing...                [100%]
1:ocfs-support            [ 33%]
2:ocfs-tools             [67%]
3:ocfs-2.4.21-EL-smp     [100%]
Linking OCFS module into the module path [  OK  ]

    配置 OCFS

  以 root 用户身份运行 ocfstool:
# ocfstool

选择 Tasks → Generate Config
选择与 RAC 专用网络相对应的接口
单击 OK 生成 /etc/ocfs.conf 文件,然后退出 ocfstool
对集群中的每个节点重复这些操作。
 

     在每个节点上装载 OCFS:

# /sbin/load_ocfs
/sbin/insmod ocfs node_name=ds1.orademo.org ip_address=192.168.100.51
   cs=1795 guid=2FB60EDD8B872FC4216C00010324C023 comm_voting=1 ip_port=7000
Using /lib/modules/2.4.21-EL-smp-ABI/ocfs/ocfs.o
Warning:kernel-module version mismatch
/lib/modules/2.4.21-EL-smp-ABI/ocfs/ocfs.o was compiled for kernel version 2.4.21-4.ELsmp
while this kernel is version 2.4.21-15.0.2.ELsmp
Warning:loading /lib/modules/2.4.21-EL-smp-ABI/ocfs/ocfs.o will taint the kernel:forced load
See http://www.tux.org/lkml/#export-tainted for information about tainted modules
Module ocfs loaded, with warnings

    不必担心关于不同内核版本和损坏模块的警告。 这仅仅是模块实用工具让我们了解该 ocfs 模块是为 Linux 内核较早版本编译的。 只要我们的内核版本与该 ocfs 模块相同或者比它更新,ocfs 就会正常工作。

    为 OCFS 文件系统创建一个挂载点:
mkdir /u02

创建 OCFS 文件系统:
mkfs.ocfs -b 128 -L /u02 -m /u02 -p 0775 \
-u root -g root /dev/sdb1 -F

    神奇的挂载

    mkfs.ocfs 只完成 OCFS 文件系统初始化工作的一部分。其余的初始化工作在第一次挂载文件系统时进行。 因此,对于新创建的文件系统,您必须在创建它的同一主机上挂载它。
mount -t ocfs -L /u02 /u02

    请注意,mount 命令使用了在创建文件系统期间所使用的文件系统标签 (-L /u02)。 这是一种既引用文件系统又不必记住设备名的便利方法。

    要验证已挂载 OCFS 文件系统,可执行 mount 命令或运行 df:
mount -t ocfs
/dev/sdb1 on /u02 type ocfs (rw)

df /u02
Filesystem       1K-blocks        Used     Available  Use%   Mounted on
/dev/sdb1        35557856      36064  35521792   1%          /u02

    在其他节点上挂载 OCFS 文件系统之前,最好在创建该文件系统的节点上进行卸下并再次挂载该文件系统的“循环”挂载操作:
umount /u02
mount -t ocfs -L /u02 /u02

    现在就可以在其他集群节点上挂载 OCFS 文件系统了。

    要在系统启动时自动挂载 OCFS 文件系统,可以在 /etc/fstab 中添加类似以下的一行:
LABEL=/u02         /u02           ocfs    _netdev         0 0

    我再次选择了使用设备标签 (LABEL=/u02) 而非设备名 (/dev/sdb1)。 这在设备名在每个节点上均不同时尤其有用。 在我的示例中,OCFS 设备在节点 ds1 名为 /dev/sdb1,而在节点 ds2 上名为 /dev/sdf1。 通过使用设备标签而非设备名,我可以在每个节点上使用相同的 /etc/fstab 项。

为共享文件创建目录:
CRS 文件
mkdir /u02/oracrs
chown oracle:oinstall /u02/oracrs
chmod 775 /u02/oracrs

数据库文件
mkdir /u02/oradata
chown oracle:oinstall /u02/oradata
chmod 775 /u02/oradata

对每个将要用于 ocfs 的磁盘分区重复这一过程。

Oracle 自动存储管理器 (ASM)

    安装 ASMLib
    在 Linux 平台上,ASM 可以使用原始设备或通过 ASMLib 接口管理的设备。出于易于使用和性能方面的原因,Oracle 建议使用通过 ASMLib 接口管理的设备而非原始设备。 可以从 OTN 免费获得 ASMLib。这一部分将逐步讲解使用 ASMLib 配置一个简单 ASM 实例并构建一个使用 ASM 进行磁盘存储的数据库的全过程。

(注意: 到 2005 年 3 月为止,ASMLib 还不能用于 RHES4 或 SLES9。 预计 AMLib 将包含在从 10.1.0.4 版开始的补丁集中。)

    确定您需要哪个版本的 ASMLib;ASMLib 以一套共三个 Linux 程序包的形式提供:
     oracleasmlib — ASM 库
     oracleasm-support — 管理 ASMLib 所需的实用程序
     oracleasm — 用于 ASM 库的内核模块

    每个 Linux 发行版本都有其自己的一套 ASMLib 程序包,并且在每个发行版本中,每个内核版本都有一个相应的 oracleasm 程序包。

    以 root 用户身份登录并运行以下命令来确定您正在使用的内核:
# uname -rm
2.4.9-e.27smp i686

该示例表明,这是一个使用 Intel i686 CPU 的 SMP(多处理器)系统的 2.4.9 内核。

使用此信息在 OTN 上查找相应的 ASMLib 程序包:
将您的 Web 浏览器指向 http://otn.oracle.com/tech/linux/asmlib/index.html
选择适用于您 Linux 版本的链接。
下载适用于您 Linux 版本的 oracleasmlib 和 oracleasm-support 程序包。
下载与您的内核相对应的 oracleasm 程序包。
对于以上示例,我下载了 oracleasm-2.4.9-e-smp-1.0.0-1.i686.rpm 程序包。

接下来,通过以 root 用户身份执行以下命令,在每个集群主机上安装这些程序包:
rpm -Uvh oracleasm-kernel_version-asmlib_version.cpu_type.rpm \
oracleasmlib-asmlib_version.cpu_type.rpm \
oracleasm-support-asmlib_version.cpu_type.rpm

例如:
# rpm -Uvh \
> oracleasm-2.4.9-e-smp-1.0.0-1.i686.rpm \
> oracleasmlib-1.0.0-1.i386.rpm \
> oracleasm-support-1.0.0-1.i386.rpm
Preparing...                 [100%]
1:oracleasm-support       [ 33%]
2:oracleasm-2.4.9-e-smp   [ 66%]
Linking module oracleasm.o into the module path [  OK  ]
3:oracleasmlib            [100%]

    配置 ASMLib

    使用 ASMLib 之前,必须运行配置脚本来准备驱动程序。 以 root 用户身份在每个集群主机上运行以下命令并回应提示,如下例所示。
# /etc/init.d/oracleasm configure
Configuring the Oracle ASM library driver.

    这将配置 Oracle ASM 库驱动程序的启动时属性。以下问题将确定在启动时是否加载驱动程序以及它将拥有的权限。当前值将显示在方括号(“[]”)中。按 <ENTER> 而不键入回应将保留该当前值。按 Ctrl-C 将终止。
Default user to own the driver interface []:oracle
Default group to own the driver interface []:dba
Start Oracle ASM library driver on boot (y/n) [n]:y
Fix permissions of Oracle ASM disks on boot (y/n) [y]:y
Writing Oracle ASM library driver configuration             [  OK  ]
Creating /dev/oracleasm mount point                   [  OK  ]
Loading module "oracleasm"             [  OK  ]
Mounting ASMlib driver filesystem           [  OK  ]
Scanning system for ASM disks               [  OK  ]

现在,如下所示启用 ASMLib 驱动程序。
# /etc/init.d/oracleasm enable
Writing Oracle ASM library driver configuration         [  OK  ]
Scanning system for ASM disks                 [  OK  ]

    为 ASM 配置磁盘

    接下来告诉 ASMLib 驱动程序要使用哪些磁盘。请注意,这些磁盘是不包含任何内容(甚至不包含分区)的空磁盘。 也可以将磁盘分区用于 ASM,但不建议这样做。

通过以 root 用户身份运行以下命令来标记由 ASMLib 使用的磁盘。 仅从一个集群主机上执行此操作。
/etc/init.d/oracleasm createdisk DISK_NAME device_name

提示: 以大写字母输入 DISK_NAME。当前版本中有一个错误,即如果使用小写字母,ASM 实例将无法识别磁盘。
# /etc/init.d/oracleasm createdisk VOL1 /dev/sdb
Marking disk "/dev/sdb" as an ASM disk                    [  OK  ]
# /etc/init.d/oracleasm createdisk VOL2 /dev/sdc
Marking disk "/dev/sdc" as an ASM disk                  [  OK  ]
.
.
.以下示例演示了如何列出标记为由 ASMLib 使用的所有磁盘。
# /etc/init.d/oracleasm listdisks
VOL1
VOL2
.

在所有其他集群主机上,以 root 用户身份运行以下命令,扫描所配置的 ASMLib 磁盘:
/etc/init.d/oracleasm scandisks

原始分区

在集群文件系统和 ASM 可用之前,原始分区是为 Oracle RAC 配置共享磁盘存储的唯一选择。 由于这种技术经历长时间的考验,因此它们构成了一个构建 RAC 集群的非常坚实的平台。

但是,原始分区有很多缺点。 主要是它们必须接受每个磁盘可使用 15 个分区的限制、Linux 强制的 255 个原始设备的限制以及额外的管理任务和所需计划。 对于单实例环境而言,逻辑卷管理器 (LVM) 可以减少管理工作并在存储布局方面提供更多灵活性。 不幸的是,LVM 不能识别集群,因此在 RAC 环境中不支持它的使用。

在使用原始分区时,通常最好选择一组标准的分区大小,即某个基本大小的倍数。 这就在存储布局方面提供了更大的灵活性,并且在需要重新调整 I/O 时便于将分区重新配给其他磁盘。我为本示例选择了标准的分区大小 50MB、200MB、600MB 和 1200MB。

为进一步简化管理,每个共享磁盘将拥有相同的分区布局,其中包含某种标准化的分区大小。 在单个磁盘上能够创建的可用分区的最大数量是 15,因此要谨慎地计划分区布局。 下表显示了本指南中用于原始分区示例的分区布局。
分区    类型    大小 (mb)
 1      主分区    50 
 2      主分区    50
 3      主分区   200
 4     扩展分区    -
 5      逻辑型   200
 6      逻辑型   200
 7      逻辑型   200
 8      逻辑型   200
 9      逻辑型   200
10     逻辑型   600
11     逻辑型   600
12     逻辑型   600
13     逻辑型  1200
14     逻辑型  1200
15     逻辑型   任意
16     逻辑型   任意

    使用 fdisk(或者您喜爱的磁盘分区工具)为每个共享磁盘创建分区。 以下示例显示了用于本指南所使用磁盘之一的部分过程:
# fdisk /dev/sdb

The number of cylinders for this disk is set to 4427.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)

Command (m for help):p

Disk /dev/sdb:36.4 GB, 36420075008 bytes
255 heads, 63 sectors/track, 4427 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot    Start       End    Blocks   Id  System

Command (m for help):n
Command action
e   extended
p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-4427, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-4427, default 4427):+50m

Command (m for help):n
Command action
e   extended
p   primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (8-4427, default 8):
Using default value 8
Last cylinder or +size or +sizeM or +sizeK (8-4427, default 4427):+50m

Command (m for help):n
Command action
e   extended
p   primary partition (1-4)
p
Partition number (1-4): 3
First cylinder (15-4427, default 15):
Using default value 15
Last cylinder or +size or +sizeM or +sizeK (15-4427, default 4427):+200m

Command (m for help):n
Command action
e   extended
p   primary partition (1-4)
e
Selected partition 4
First cylinder (40-4427, default 40):
Using default value 40
Last cylinder or +size or +sizeM or +sizeK (40-4427, default 4427):
Using default value 4427

Command (m for help):n
First cylinder (40-4427, default 40):
Using default value 40
Last cylinder or +size or +sizeM or +sizeK (40-4427, default 4427):+200m
.

Command (m for help):p

Disk /dev/sdb:36.4 GB, 36420075008 bytes
255 heads, 63 sectors/track, 4427 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot    Start       End    Blocks   Id  System
/dev/sdb1             1      7  56196   83  Linux
/dev/sdb2             8        14     56227+  83  Linux
/dev/sdb3            15        39    200812+  83  Linux
/dev/sdb4            40      4427  35246610    5  Extended
/dev/sdb5            40        64    200781   83  Linux
/dev/sdb6            65        89    200781   83  Linux
/dev/sdb7            90       114    200781   83  Linux
/dev/sdb8           115       139    200781   83  Linux
/dev/sdb9           140       164    200781   83  Linux
/dev/sdb10          165       238    594373+  83  Linux
/dev/sdb11          239       312    594373+  83  Linux
/dev/sdb12          313       386    594373+  83  Linux
/dev/sdb13          387       533   1180746   83  Linux
/dev/sdb14          534       680   1180746   83  Linux

Command (m for help):w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

在其他主机上运行 partprobe 使内核与所做的更改同步:
# partprobe

下表列出了最小的 RAC 数据库所需的每个分区。 最小分区大小已经映射到为本示例所选择的标准分区大小。 在本示例中,使用了两个共享磁盘 (/dev/sdb and /dev/sdc)。 (请注意,SLES8 为原始设备使用了一种不同的命名标准。 Red Hat 中的 dev/raw/raw1 在 SLES8 中为 /dev/raw1。 )

目的                       最小大小 (MB)   标准化大小(MB)   磁盘设备   原始设备
Oracle Cluster Registry 100         200        /dev/sdb3      /dev/raw/raw1
Oracle CRS Voting         20          50          /dev/sdb1      /dev/raw/raw2
SYSTEM 表空间               500        600        /dev/sdb11   /dev/raw/raw3
SYSAUX 表空间               800        1200      /dev/sdc13    /dev/raw/raw4
UNDOTBS1 表空间          500        600        /dev/sdb10    /dev/raw/raw5
UNDOTBS2 表空间          500        600        /dev/sdc10    /dev/raw/raw6
EXAMPLE 表空间             160        200        /dev/sdb5      /dev/raw/raw7
USERS 表空间                 120        200        /dev/sdb6      /dev/raw/raw8
TEMP 表空间                   250        600        /dev/sdc11    /dev/raw/raw9
SPFILE                     5          50          /dev/sdb2      /dev/raw/raw10
口令文件                    5         50          /dev/sdc1      /dev/raw/raw11
控制文件 1               110         200        /dev/sdb7     /dev/raw/raw12
控制文件 2              110          200        /dev/sdb7     /dev/raw/raw13
重做日志 1_1          120          200        /dev/sdb8     /dev/raw/raw14
重做日志 1_2          120          200        /dev/sdb9     /dev/raw/raw15
重做日志 2_1          120          200        /dev/sdb8     /dev/raw/raw16
重做日志 2_2          120          200        /dev/sdb9     /dev/raw/raw17
磁盘空间总计: 3,660 5,550  

    将原始设备映射到表中的每个分区:

    RHEL 版本

    将以下各行添加到每个集群节点上的 /etc/sysconfig/rawdevices:
/dev/raw/raw1 /dev/sdb3
/dev/raw/raw2 /dev/sdb1
/dev/raw/raw3 /dev/sdb11
/dev/raw/raw4 /dev/sdc13
/dev/raw/raw5 /dev/sdb10
/dev/raw/raw6 /dev/sdc10
/dev/raw/raw7 /dev/sdb5
/dev/raw/raw8 /dev/sdb6
/dev/raw/raw9 /dev/sdc11
/dev/raw/raw10 /dev/sdb2
/dev/raw/raw11 /dev/sdc1
/dev/raw/raw12 /dev/sdb7
/dev/raw/raw13 /dev/sdc7
/dev/raw/raw14 /dev/sdb8
/dev/raw/raw15 /dev/sdb9
/dev/raw/raw16 /dev/sdc8
/dev/raw/raw17 /dev/sdc9


    SLES 8 和 SLES9

    将以下各行添加到每个集群节点上的 /etc/raw:
raw1:sdb3
raw2:sdb1
raw3:sdb11
raw4:sdc13
raw5:sdb10
raw6:sdc10
raw7:sdb5
raw8:sdb6
raw9:sdc11
raw10:sdb2
raw11:sdc1
raw12:sdb7
raw13:sdc7
raw14:sdb8
raw15:sdb9
raw16:sdc8
raw17:sdc9

    为每个节点上的 CRS 原始设备设置所有权和权限。 这些文件的所有权和权限必须按照所示内容进行准确地设置(安装指南和版本说明都是不正确的)。 如果不这样做,则导致 CRS 安装失败。 如果需要在 CRS 安装失败后进行清理,请参见 MetaLink 说明:239998.1。
chown root:oinstall /dev/raw/raw[12]
chmod 660 /dev/raw/raw[12]

    为每个节点上的数据库原始设备设置所有权和权限:
chown oracle:oinstall /dev/raw/raw[3-9]
chown oracle:oinstall /dev/raw/raw1[0-7]
chmod 660 /dev/raw/raw[3-9]
chmod 660 /dev/raw/raw1[0-7]

(注意: RHEL4 对原始设备的实施方法与以前的版本不同。 每次启动原始设备服务时,都会重新创建 /dev/raw/raw* 设备文件,删除任何现有的非默认所有权或权限。 当原始设备与 Oracle 搭配使用时,有几种方法可以解决这个问题。 最简单的方法是将 oracle 帐户添加到 disk 组(例如: usermod –G dba,disk oracle)。 或者,您可以创建一个启动脚本,在系统启动时更改原始设备的所有权和权限。)
重新启动原始设备服务。

RHEL2/3
/sbin/service rawdevices restart

SLES8/9
/etc/init.d/raw start
chkconfig raw on

    现在,可以不再考虑这件事而继续完成剩下的安装,但是如果您象我一样必须记住每个原始设备所完成的工作就有许多问题要问了。 如果我们能够根据每个原始设备的用途来命名就好了。 这就是为什么要使用符号链接了。

    下表显示了每个原始设备以及我们要为其关联的文件名。 (实际上,我希望将 spfile 和口令文件与 $ORACLE_HOME/dbs 中的位置相关联,但是由于在安装的这个阶段该目录尚不存在,因此我暂时选择了 /u01/oradata/dbname 中的位置。 在安装完成后,如果您愿意,可以将这些原始设备的符号链接重新定位到 $ORACLE_HOME/dbs 目录。)

   目的                             原始设备                 文件名
Oracle Cluster Registry /dev/raw/raw1    /u02/oracrs/ocr.crs
Oracle CRS Voting         /dev/raw/raw2    /u02/oracrs/vote.crs
SYSTEM 表空间               /dev/raw/raw3    /u02/oradata/gemni/system_01.dbf
SYSAUX 表空间               /dev/raw/raw4    /02/oradata/gemni/sysaux_01.dbf
UNDOTBS1 表空间          /dev/raw/raw5    /u02/oradata/gemni/undo1_01.dbf
UNDOTBS2 表空间          /dev/raw/raw6    /u02/oradata/gemni/undo2_01.dbf
EXAMPLE 表空间             /dev/raw/raw7    /02/oradata/gemni/example_01.dbf
USERS 表空间                 /dev/raw/raw8    /u02/oradata/gemni/users_01.dbf
TEMP 表空间                   /dev/raw/raw9    /u02/oradata/gemni/temp_01.dbf
SPFILE                           /dev/raw/raw10  /u01/oradata/gemni/spfilegemni.ora
口令文件                          /dev/raw/raw11 /u01/oradata/gemni/orapwgemni
控制文件 1                       /dev/raw/raw12  /u01/oradata/gemni/control.ctl
控制文件 2                      /dev/raw/raw13  /u02/oradata/gemni/control.ctl
重做日志 1_1                  /dev/raw/raw14  /u01/oradata/gemni/redo1_1.log
重做日志 1_2                  /dev/raw/raw15  /u01/oradata/gemni/redo1_2.log
重做日志 2_1                  /dev/raw/raw16  /u01/oradata/gemni/redo2_1.log
重做日志 2_2                 /dev/raw/raw17   /u01/oradata/gemni/redo2_2.log


现在只需创建目录和链接即可:

以 root 用户身份创建用于符号链接的目录。 在本示例中,数据库名是 gemni。
CRS 文件
mkdir -p /u02/oracrs
chown -R oracle:oinstall /u02/oracrs
chmod -R 775 /u02/oracrs

数据库文件
mkdir -p /u01/oradata/gemni /u02/oradata/gemni
chown -R oracle:oinstall /u0[12]/oradata
chmod -R 775 /u0[12]/oradata

以 oracle 用户身份创建符号链接。
ln -s /dev/raw/raw1 /u02/oracrs/ocr.crs
ln -s /dev/raw/raw2 /u02/oracrs/vote.crs
ln -s /dev/raw/raw3 /u02/oradata/gemni/system_01.dbf
ln -s /dev/raw/raw4 /u02/oradata/gemni/sysaux_01.dbf
ln -s /dev/raw/raw5 /u02/oradata/gemni/undo1_01.dbf
ln -s /dev/raw/raw6 /u02/oradata/gemni/undo2_01.dbf
ln -s /dev/raw/raw7 /u02/oradata/gemni/example_01.dbf
ln -s /dev/raw/raw8 /u02/oradata/gemni/users_01.dbf
ln -s /dev/raw/raw9 /u02/oradata/gemni/temp_01.dbf
ln -s /dev/raw/raw10 /u01/oradata/gemni/spfilegemni.ora
ln -s /dev/raw/raw11 /u01/oradata/gemni/orapwgemni
ln -s /dev/raw/raw12 /u01/oradata/gemni/control.ctl
ln -s /dev/raw/raw13 /u02/oradata/gemni/control.ctl
ln -s /dev/raw/raw14 /u01/oradata/gemni/redo1_1.log
ln -s /dev/raw/raw15 /u01/oradata/gemni/redo1_2.log
ln -s /dev/raw/raw16 /u02/oradata/gemni/redo2_1.log
ln -s /dev/raw/raw17 /u02/oradata/gemni/redo2_2.log

最后,我们需要为数据库配置助手 (DBCA) 创建原始设备映射文件。 此文件将您已创建的原始设备与 DBCA 将要用于创建数据库的名称相关联。 剪切和粘贴以下各行,为本示例创建映射文件:
cat > $HOME/gemni_raw.conf << EOF
system=/u02/oradata/gemni/system_01.dbf
sysaux=/u02/oradata/gemni/sysaux_01.dbf
example=/u02/oradata/gemni/example_01.dbf
users=/u02/oradata/gemni/users_01.dbf
temp=/u02/oradata/gemni/temp_01.dbf
undotbs1=/u02/oradata/gemni/undo1_01.dbf
undotbs2=/u02/oradata/gemni/undo2_01.dbf
redo1_1=/u01/oradata/gemni/redo1_1.log
redo1_2=/u01/oradata/gemni/redo1_2.log
redo2_1=/u02/oradata/gemni/redo2_1.log
redo2_2=/u02/oradata/gemni/redo2_2.log
control1=/u01/oradata/gemni/control.ctl
control2=/u02/oradata/gemni/control.ctl
spfile=/u01/oradata/gemni/spfilegemni.ora
pwdfile=/u01/oradata/gemni/orapwgemni
EOF

然后将 DBCA_RAW_CONFIG 环境变量导出并指向此文件:
export DBCA_RAW_CONFIG=$HOME/gemni_raw.conf

    现在您已准备就绪,可以安装 Oracle CRS、安装 Oracle 数据库软件并创建 Oracle RAC 数据库了。

0
相关文章