Oracle 二进制文件和 Oracle 配置文件的存储管理要求
使用本地磁盘存储 Oracle 二进制文件和 Oracle 配置文件
使用共享文件系统存储 Oracle 二进制文件和 Oracle 配置文件
将 Oracle Data Guard 与 Support for Oracle RAC 结合使用
将 Oracle Real Application Clusters Guard 选件与 Oracle Solaris Cluster 3.3 软件结合使用
如何安装 Support for Oracle RAC 软件包
6. Support for Oracle RAC 故障排除
7. 修改 Support for Oracle RAC 的现有配置
可通过准备 Oracle Solaris Cluster 节点,修改操作系统的配置,从而使 Oracle RAC 能够在 Oracle Solaris Cluster 节点上运行。准备 Oracle Solaris Cluster 节点和磁盘涉及以下任务:
绕过 NIS 名称服务
创建数据库管理员 (database administrator, DBA) 组和 DBA 用户帐户
为 Oracle RAC 软件配置共享内存
![]() | 注意 - 在可以运行 Support for Oracle RAC 的所有节点上执行这些任务。如果您未在所有节点上执行这些任务,Oracle 安装将不完整。Oracle 安装不完整会导致 Support for Oracle RAC 在启动过程中出现故障。 |
为了使 Oracle RAC 能够在区域群集中运行,您需要执行以下附加任务:
在区域群集中为 Oracle RAC 软件配置共享内存
在区域群集中为 Oracle RAC 软件设置必要权限
在区域群集中为 Oracle RAC 软件配置逻辑主机名资源
本节包括以下信息:
准备 Oracle Solaris Cluster 节点之前,请确保已经完成 Oracle RAC 的所有预安装任务。有关更多信息,请参见 Oracle RAC 文档。
绕过 NIS 名称服务可以防止 Support for Oracle RAC 数据服务受到群集节点所在公共网络的故障的影响。群集节点的公共网络故障可能会导致 NIS 名称服务不可用。如果 Support for Oracle RAC 引用 NIS 名称服务,名称服务不可用可能会导致 Support for Oracle RAC 数据服务出现故障。
绕过 NIS 名称服务可以确保 Support for Oracle RAC 数据服务在设置用户标识符 (user identifier, ID) 时不引用 NIS 名称服务。Support for Oracle RAC 数据服务在启动或停止数据库时设置用户 ID。
passwd: files [NOTFOUND=return] nis [TRYAGAIN=0] publickey: files [NOTFOUND=return] nis [TRYAGAIN=0] project: files [NOTFOUND=return] nis [TRYAGAIN=0] group: files [NOTFOUND=return] nis [TRYAGAIN=0]
有关 /etc/nsswitch.conf 文件的更多信息,请参见 nsswitch.conf(4) 手册页。
在具有 Oracle Solaris Cluster 软件的 Oracle RAC 安装中,DBA 组通常名为 dba。该组通常包含 root 用户和 oracle 用户。
注 - 用户和组的该配置与 Oracle 文档中介绍的 Oracle RAC 独立安装的配置不同。Oracle RAC 的独立安装使用名为 oinstall 的主 DBA 组和名为 dba 的辅助组。有些应用程序还需要名为 oper 的辅助组。有关更多信息,请参见 Oracle 文档。
在每个群集节点上执行此任务。
# echo 'group-name:*:group-id:user-list' >> /etc/group
指定要为其添加条目的组的名称。该组通常命名为 dba。
指定系统中组的唯一数字 ID (GID)。
以逗号分隔的方式指定组中允许的用户名称列表。确保列表包含所需的所有 DBA 用户的名称。该组通常包含 root 用户和 oracle 用户。
确保条目在可以运行 Support for Oracle RAC 的每个节点上都相同。
您可以在网络名称服务(如网络信息服务 (Network Information Service, NIS) 或 NIS+)中创建名称服务条目,以便信息可用于数据服务客户端。也可以在本地 /etc 文件中创建条目,以消除对网络名称服务的依赖性。
无需为 root 用户创建主目录。
对于要创建其主目录的每个潜在用户,请键入以下命令:
# mkdir -p user-home
指定要创建的主目录的完整路径。
无需添加 root 用户。
使用 useradd(1M) 命令添加每个用户。将用户添加到系统可在以下文件中为用户添加一个条目:
/etc/passwd
/etc/shadow
# useradd -u user-id -g group-name -d user-home \ [ -s user-shell] user-name
指定系统中用户的唯一数字 ID (UID)。
指定用户为其中成员的用户组的名称。必须指定您在步骤 2 中定义的 DBA 组。
指定用户主目录的完整路径。必须指定在步骤 3 中为用户创建的主目录。
选择性地指定用户登录时用作用户 shell 的程序的完整路径名。如果忽略 -s 选项,默认情况下,系统将使用 /bin/sh 程序。如果指定 -s 选项,user-shell 必须指定有效的可执行文件。
指定要添加的用户的用户名。必须指定您在步骤 2 中定义的 DBA 组中的潜在用户名称。
确保每个用户在可以运行 Support for Oracle RAC 的每个节点上都相同。
使用 passwd(1) 命令来设置每个用户的密码。
# password user-name
指定要设置其密码的用户的用户名。必须指定您在步骤 4 中添加的 DBA 组中的用户的名称。
passwd 命令会提示您输入密码。
passwd 命令会提示您重新键入密码。
所有者:为其创建了主目录的用户
组:在步骤 2 中定义的 DBA 组
对于要更改其所有权的每个主目录,请键入以下命令:
# chown user-name:group-name user-home
对于要创建的每个子目录,请键入以下命令:
# mkdir /var/opt/user-name
指定要为其 /var/opt 目录创建子目录的用户的用户名。必须指定您在步骤 4 中添加的 DBA 组中的用户的名称。
所有者:为其创建了目录的用户
组:在步骤 2 中定义的 DBA 组
对于要更改其所有权的每个目录,请键入以下命令:
# chown user-name:group-name /var/opt/user-name
示例 1-1 创建 DBA 组和 DBA 用户帐户
本示例显示了创建 DBA 组 dba 的命令序列,该组将包含用户 root 和 oracle。
按如下所述创建 dba 组和 oracle 用户:
dba 组的 GID 为 520。
oracle 用户的主目录为 /Oracle-home。
oracle 用户的 UID 为 120。
oracle 用户的登录 shell 为 Korn shell。
# echo 'dba:*:520:root,oracle' >> /etc/group # mkdir /Oracle-home # useradd -u 120 -g dba -d /Oracle-home -s /bin/ksh oracle # passwd oracle New Password:oracle Re-enter new Password:oracle passwd: password successfully changed for oracle # chown oracle:dba /Oracle-home # mkdir /var/opt/oracle # chown oracle:dba /var/opt/oracle
以下手册页:
请转至如何在全局群集中为 Oracle RAC 软件配置共享内存。
为了使 Oracle RAC 软件正确运行,您必须确保所有群集节点上有足够的可用共享内存。在每个群集节点上执行此任务。
您必须根据群集中的可用资源配置这些参数。但是,每个参数的值必须足以使 Oracle RAC 软件创建符合其配置要求的共享内存段。有关每个参数要求的最小值,请参见 Oracle 文档。
以下示例显示了 /etc/system 文件中要配置的条目。
*SHARED MEMORY/ORACLE set shmsys:shminfo_shmmax=4294967295
![]() | 注意 - 重新引导之前,必须确保任何已安装的卷管理器软件均已完全安装。卷管理器软件安装不完整会导致出现紧急情况。如果您使用 VxVM,也需要确保已安装该软件,并且 VxVM 群集功能的许可证有效。否则,重新引导时会出现紧急情况。有关如何在安装期间从节点紧急情况中恢复的信息,请参见节点在 Support for Oracle RAC 初始化期间出现紧急情况。 |
请转至安装 Support for Oracle RAC 软件包。
要在区域群集中为 Oracle RAC 软件配置共享内存,请执行以下步骤:
有关在全局群集中配置共享内存的详细说明,请参见如何在全局群集中为 Oracle RAC 软件配置共享内存。
注 - 这些步骤并不影响区域群集的实际共享内存控制。执行这些步骤可帮助您使用 Oracle dbca 实用程序设置数据库内存分配。如果未使用 Oracle dbca 实用程序创建 RAC 数据库,可以在区域群集中跳过这些步骤。
#clzonecluster configure zcname clzonecluster:zcname> add capped-memory clzonecluster:cz1-2n:capped-memory> set physical=memsize clzonecluster:cz1-2n:capped-memory> set swap=memsize clzonecluster:cz1-2n:capped-memory> set locked=memsize clzonecluster:cz1-2n:capped-memory> end clzonecluster:cz1-2n>commit
指定物理内存的大小。
指定交换内存的大小。
指定 Oracle RAC 数据库进程可以请求在内存中锁定的共享内存段大小的限制。
注 - 除了 capped-memory 属性的 locked 特性之外,您还可以在区域群集中使用 max-shm-memory 属性直接配置共享内存段的限制。另请参见 Solaris 手册页 zonecfg(1M)。
#clzonecluster reboot zcname
注 - 您可以在创建区域群集的过程中执行配置 capped-memory 属性的各特性的步骤。如果在创建区域群集的过程中配置了 capped-memory 属性的各特性,与内存相关的属性将在首次引导区域群集后立即生效。请参见《Oracle Solaris Cluster 软件安装指南》中的"如何创建区域群集"。
您应设置必要的权限以便 Oracle RAC 能够在区域群集配置中运行。您可以使用 clzonecluster 命令,通过设置 limitpriv 属性将必要权限添加到区域群集配置中。执行以下步骤,在区域群集中设置必要权限以运行 Oracle RAC。
# clzonecluster configure zcname clzonecluster:zcname>set limitpriv ="default,proc_priocntl,proc_clock_highres" clzonecluster:zcname>commit
# clzonecluster reboot zcname
为了在区域群集中支持 Oracle RAC 9i 配置的逻辑主机名资源和 Oracle RAC 10g 和 11g 配置中的 Oracle Clusterware 虚拟 IP 资源,您应使用 clzonecluster 命令在给定的区域群集中配置这些资源使用的支持故障转移功能的主机名或 IP 地址。
执行以下步骤,在区域群集配置中为 Oracle RAC 10g 或 11g 配置虚拟 IP 地址。
# clzonecluster configure zcname clzonecluster:zcname>add net clzonecluster:zcname:net>set address=racnode1-vip clzonecluster:zcname:net>end clzonecluster:zcname>add net clzonecluster:zcname:net>set address=racnode2-vip clzonecluster:zcname:net>end clzonecluster:zcname>commit
# clzonecluster reboot zcname