跳过导航链接 | |
退出打印视图 | |
适用于 Oracle Real Application Clusters 的 Oracle Solaris Cluster 数据服务指南 Oracle Solaris Cluster 3.3 3/13 (简体中文) |
如何使用 clsetup 注册和配置 Oracle RAC 框架资源组
如何使用 clsetup 注册和配置多属主卷管理器框架资源组
如何使用 clsetup 为 Oracle 文件注册和配置存储资源
如何通过使用 clsetup 注册和配置 Oracle ASM 资源组
6. 排除 Support for Oracle RAC 的故障
7. 修改 Support for Oracle RAC 的现有配置
如果要为 Oracle 数据库文件使用卷管理器,则该卷管理器需要全局设备组以供 Oracle RAC 数据库使用。
要创建的全局设备组的类型取决于使用的卷管理器:
如果要使用 Solaris Volume Manager for Sun Cluster,请创建一个 Solaris Volume Manager for Sun Cluster 多属主磁盘集。请参见如何在 Solaris Volume Manager for Sun Cluster 中为 Oracle RAC 数据库创建多属主磁盘集。
如果要使用 VxVM,请创建一个 VxVM 共享磁盘组。请参见如何为 Oracle RAC 数据库创建 VxVM 共享磁盘组。
注 - 只有使用的是 Solaris Volume Manager for Sun Cluster,才执行此任务。
如果使用的是 Solaris Volume Manager for Sun Cluster,Solaris Volume Manager 需要多属主磁盘集以供 Oracle RAC 数据库、Sun QFS 共享文件系统或 Oracle ASM 使用。有关 Solaris Volume Manager for Sun Cluster 多属主磁盘集的信息,请参见《Solaris Volume Manager Administration Guide》中的"Multi-Owner Disk Set Concepts"。
开始之前
确保在每个节点上安装必需的 Support for Oracle RAC 软件包。有关更多信息,请参见安装 Support for Oracle RAC 软件包。
除非您使用的是 Sun QFS 共享文件系统,否则不要在多属主磁盘集中创建任何文件系统。在不含 Sun QFS 共享文件系统的配置中,只有原始数据文件使用此磁盘集。
添加到多属主磁盘集的磁盘设备必须直接连接到所有群集节点。
使用 metaset(1M) 命令可实现此目的。
# metaset -s setname -M -a -h nodelist
指定要创建的磁盘集的名称。
指定要创建的磁盘集为多属主磁盘集。
指出 -h 选项指定的节点将添加到磁盘集。
指定一个要添加到磁盘集的节点的空格分隔列表。Support for Oracle RAC 软件包必须安装在列表中的每一节点上。
# metaset -s setname -a devicelist
指定将修改在步骤 1 中创建的磁盘集。
指出 devicelist 指定的设备将添加到磁盘集。
指定要添加到磁盘集的全局设备的完整设备 ID 路径名称的空格分隔列表。要允许从群集中的任何节点对每一设备进行一致的访问,请确保每一设备 ID 路径名称的格式为 /dev/did/dsk/dN,其中 N 为设备号。
提示 - 如果要为 Oracle 数据文件创建许多卷,可以使用软分区简化此步骤。但是,如果您使用的是 Sun QFS 共享文件系统并且您系统上的 I/O 负载很重,请为数据和元数据使用单独的分区。否则,系统的性能可能会降低。有关软分区的信息,请参见《Solaris Volume Manager Administration Guide》中的第 12 章 "Soft Partitions (Overview)"和《Solaris Volume Manager Administration Guide》中的第 13 章 "Soft Partitions (Tasks)"。
通过将在步骤 2 中添加的全局设备上的分片进行串联,创建每一卷。使用 metainit(1M) 命令可实现此目的。
# metainit -s setname volume-abbrev numstripes width slicelist
如果使用的不是镜像的设备,请忽略此步骤。
使用 metainit 命令创建每一镜像,如下所示:
# metainit -s setname mirror -m submirror-list
指定要为在步骤 1 中创建的磁盘集创建一个镜像。
以缩写卷名称格式指定正在创建的镜像的名称。缩写的卷名称的格式为 dV,其中 V 为卷编号。
指定镜像要包含的子镜像的空格分隔列表。每一子镜像必须是您在步骤 3 中创建的卷。以缩写卷名称格式指定每一子镜像的名称。
注 - 有关在区域群集中配置 Solaris Volume Manager 磁盘集的信息,请参见《Oracle Solaris Cluster 软件安装指南》中的"如何向区域群集中添加磁盘集 (Solaris Volume Manager)"。
请使用 metaset 命令来实现此目的。
# metaset -s setname
指定要检验在步骤 1 中创建的磁盘集。
此命令显示一个表,该表包含关于已正确添加到磁盘集中的每一节点的以下信息:
Host 列包含节点名称。
Owner 列包含文本 multi-owner。
Member 列包含文本 Yes。
# cldevicegroup show setname
指定仅显示在步骤 1 中创建的磁盘集的配置信息。
此命令显示磁盘集的设备组信息。对于多属主磁盘集,设备组类型为 Multi-owner_SVM。
# cldevicegroup status setname
此命令在多属主磁盘集中的每一节点上显示多属主磁盘集的状态。
如果使用的是 Sun QFS 共享文件系统,请忽略此步骤。
注 - 对于区域群集,请在此区域群集中执行此步骤。
按如下所示更改卷所有权:
所有者:DBA 用户
组:DBA 组
DBA 用户和 DBA 组按照如何创建 DBA 组和 DBA 用户帐户中的说明创建。
确保仅更改 Oracle RAC 数据库将使用的卷的所有权。
# chown user-name:group-name volume-list
如果使用的是 Sun QFS 共享文件系统,请忽略此步骤。
注 - 对于区域群集,请在此区域群集中执行此步骤。
对于可以拥有磁盘集的每一节点上的卷,授予对该卷的访问权限。确保仅更改 Oracle RAC 数据库要使用的卷的访问权限。
# chmod u+rw volume-list
指定卷的逻辑名称的空格分隔列表,要对这些卷的所有者授予读写访问权限。确保此列表包含在步骤 8 中指定的卷。
注 - 对于 11g R2 和 12c,只有硬件 RAID 支持 Oracle ASM。版本 11g R2 或 12c 不支持在由卷管理器所管理的设备上使用 Oracle ASM 磁盘组。
要指定设备,请修改 ASM_DISKSTRING Oracle ASM 实例初始化参数。
例如,要为 Oracle ASM 磁盘组使用 /dev/md/setname/rdsk/d 路径,请将值 /dev/md/*/rdsk/d* 添加到 ASM_DISKSTRING 参数。如果通过编辑 Oracle 初始化参数文件修改此参数,请对参数进行如下编辑:
ASM_DISKSTRING = '/dev/md/*/rdsk/d*'
如果使用镜像设备,请在 Oracle ASM 配置中指定外部冗余。
有关更多信息,请参见 Oracle 文档。
示例 3-1 在 Solaris Volume Manager for Sun Cluster 中创建多属主磁盘集
本示例显示了在 Solaris Volume Manager for Sun Cluster 中为四节点群集创建多属主磁盘集所需操作的顺序。磁盘集使用镜像设备。
磁盘集将与 Sun QFS 共享文件系统一起使用。本示例未显示如何在添加到磁盘集的设备上创建 Sun QFS 共享文件系统。
要创建多属主磁盘集,请运行以下命令:
# metaset -s oradg -M -a -h pclus1 pclus2 pclus3 pclus4
多属主磁盘集命名为 oradg。将 pclus1、pclus2、pclus3 和 pclus4 节点添加到此磁盘集。
要将全局设备添加到磁盘集,请运行以下命令:
# metaset -s oradg -a /dev/did/dsk/d8 /dev/did/dsk/d9 /dev/did/dsk/d15 \ /dev/did/dsk/d16
上面的命令将以下全局设备添加到磁盘集:
/dev/did/dsk/d8
/dev/did/dsk/d9
/dev/did/dsk/d15
/dev/did/dsk/d16
要为磁盘集创建卷,请运行以下命令:
# metainit -s oradg d10 1 1 /dev/did/dsk/d9s0 # metainit -s oradg d11 1 1 /dev/did/dsk/d16s0 # metainit -s oradg d20 1 1 /dev/did/dsk/d8s0 # metainit -s oradg d21 1 1 /dev/did/dsk/d15s0
每个卷由分片的一对一串联而创建,如下表所示。不会将分片分组。
|
要为磁盘集创建镜像,请运行以下命令:
# metainit -s oradg d1 -m d10 d11 # metainit -s oradg d2 -m d20 d21
上面的命令分别从卷 d10 和 d11 创建名为 d1 的镜像,从卷 d20 和 d21 创建名为 d2 的镜像。
要检验每个节点是否已正确添加到多属主磁盘集,请运行以下命令:
# metaset -s oradgMulti-owner Set name = oradg, Set number = 1, Master = pclus2 Host Owner Member pclus1 multi-owner Yes pclus2 multi-owner Yes pclus3 multi-owner Yes pclus4 multi-owner Yes Drive Dbase d8 Yes d9 Yes d15 Yes d16 Yes
要检验是否已正确配置多属主磁盘集,请运行以下命令:
# cldevicegroup show oradg === Device Groups === Device Group Name: oradg Type: Multi-owner_SVM failback: false Node List: pclus1, pclus2, pclus3, pclus4 preferenced: false numsecondaries: 0 diskset name: oradg
要检验多属主磁盘集的联机状态,请运行以下命令:
# cldevicegroup status oradg === Cluster Device Groups === --- Device Group Status --- Device Group Name Primary Secondary Status ----------------- ------- --------- ------ --- Multi-owner Device Group Status --- Device Group Name Node Name Status ----------------- --------- ------ oradg pclus1 Online pclus2 Online pclus3 Online pclus4 Online
接下来的步骤
注 - 只有将 VxVM 与群集功能一起使用时,才执行此任务。
如果将 VxVM 与群集功能一起使用,则 VxVM 需要一个共享磁盘组,以供 Oracle RAC 数据库或 Oracle ASM 使用。
开始之前
确保在每个节点上安装必需的 Support for Oracle RAC 软件包。有关更多信息,请参见安装 Support for Oracle RAC 软件包。
添加到共享磁盘组的磁盘必须直接连接到所有群集节点。
确保 VxVM 许可证有效。如果许可证已到期,则节点会出现紧急情况。
有关 VxVM 共享磁盘组的信息,请参见 VxVM 文档。
注 - 对于 11g R2 和 12c,只有硬件 RAID 支持 Oracle ASM。版本 11g R2 或 12c 不支持在由卷管理器所管理的设备上使用 Oracle ASM 磁盘组。
要指定设备,请修改 ASM_DISKSTRING Oracle ASM 实例初始化参数。
例如,要为 Oracle ASM 磁盘组使用 /dev/md/setname/rdsk/d 路径,请将值 /dev/md/*/rdsk/d* 添加到 ASM_DISKSTRING 参数。如果通过编辑 Oracle 初始化参数文件修改此参数,请对参数进行如下编辑:
ASM_DISKSTRING = '/dev/md/*/rdsk/d*'
如果使用镜像设备,请在 Oracle ASM 配置中指定外部冗余。
有关更多信息,请参见 Oracle 文档。
接下来的步骤