6. Support for Oracle RAC 故障排除
7. 修改 Support for Oracle RAC 的现有配置
修改 Support for Oracle RAC 的现有配置的任务概述
扩展 Support for Oracle RAC 的现有配置
如何将 Support for Oracle RAC 添加到选定的节点
将卷管理器资源从 RAC 框架资源组迁移到多属主卷管理器框架资源组
如何将卷管理器资源从 RAC 框架资源组迁移到多属主卷管理器框架资源组
SPARC: 部署适用于 Oracle RAC 11g 发行版 2 的 Oracle Solaris Cluster 本机 SKGXN
SPARC: 如何从 Oracle UDLM 转换为 Oracle Solaris Cluster 本机 SKGXN
SPARC: 如何将 SKGXN 从 Oracle Solaris Cluster 本机 SKGXN 转换为 Oracle UDLM
SPARC: 如何在切换 SKGXN 之后使 Oracle RAC 联机
可以从以下实体中删除 Support for Oracle RAC:
群集中选定的节点。请参见如何从选定的节点中删除 Support for Oracle RAC。
执行此任务可从群集的所有节点中删除 Support for Oracle RAC。
在正在运行多个 Oracle RAC 数据库的群集上,执行此任务可从群集中删除 Oracle RAC 数据库。剩余的 Oracle RAC 数据库将继续在群集中运行。
此任务涉及按以下顺序从群集中删除下列资源组:
Oracle RAC 数据库资源组
包含逻辑主机名资源的资源组
包含可伸缩文件系统挂载点资源的资源组
包含 Sun QFS 元数据服务器资源的资源组
包含可伸缩设备组资源的资源组
RAC 框架资源组
多属主卷管理器框架资源组(如果使用)
![]() | 注意 - 可能需要执行此任务从正在运行多个 Oracle RAC 数据库的群集中删除 Oracle RAC 数据库。在这种情况下,请勿删除包含剩余的 Oracle RAC 数据库所依赖的资源的任何资源组。 例如,您可能已将多个数据库文件系统配置为依赖于单个设备组。在这种情况下,请勿删除包含可伸缩设备组资源的资源组。 类似地,如果多个数据库依赖于 RAC 框架资源组,请勿删除此资源组。 |
确保在群集模式下引导了在其中执行此任务的群集节点。
如果使用 Oracle 10g 发行版 1,请忽略此步骤。对于 Oracle 10g 发行版 1,未配置 Oracle RAC 数据库的资源组。
对于要删除的每个 Oracle RAC 数据库,请键入以下命令:
# clresourcegroup delete -F rac-db-rg
指定要删除的资源组。
如果使用 Oracle 10g 发行版 1、10g 发行版 2 或 11g,请忽略此步骤。对于 Oracle 10g 发行版 1、10g 发行版 2 和 11g,未配置包含逻辑主机名资源的资源组。
对于要删除的每个资源组,请键入以下命令:
# clresourcegroup delete -F lh-rg
指定要删除的资源组。
Oracle RAC 软件
Oracle Clusterware 软件
如果使用 Oracle 9i 或 Oracle 10g 发行版 1,请忽略此步骤。对于 Oracle 9i 和 Oracle 10g 发行版 1,未配置 Oracle Clusterware 框架资源。
# clresource disable crs-framework-rs
指定要禁用的资源的名称。此资源是群集中配置的 SUNW.crs_framework 资源类型的实例。
如果未配置包含可伸缩文件系统挂载点资源的资源组,请忽略此步骤。
对于要删除的每个资源组,请键入以下命令:
# clresourcegroup delete -F scal-mp-rg
指定要删除的资源组。
如果未配置包含 Sun QFS 元数据服务器资源的资源组,请忽略此步骤。
对于要删除的每个资源组,请键入以下命令:
# clresourcegroup delete -F qfs-mds-rg
指定要删除的资源组。
有关执行此任务的说明,请参见 "Using SAM-QFS With Sun Cluster"(将 SAM-QFS 与 Sun Cluster 配合使用)。
如果未配置包含可伸缩设备组资源的资源组,请忽略此步骤。
对于要删除的每个资源组,请键入以下命令:
# clresourcegroup delete -F scal-dg-rg
指定要删除的资源组。
执行此步骤的方式取决于可伸缩设备组的类型。
为此请使用 metaclear(1M) 命令。
# metaclear -s scal-dg-ms -a
指定要从中删除元设备的磁盘集的名称。
# metaset -s scal-dg-ms -d -f alldevices
指定要从中删除全局设备的磁盘集的名称。
以空格分隔的方式指定包含创建磁盘集时添加到磁盘集的所有全局设备的列表。每个设备 ID 路径名的格式为 /dev/did/dsk/dN,其中 N 是设备编号。
从磁盘集中删除所有节点会销毁磁盘集。
# metaset -s scal-dg-ms -d -h allnodes
指定要销毁的磁盘集的名称。
以空格分隔的方式指定包含创建磁盘集时添加到磁盘集的所有节点的列表。
有关更多信息,请参见 VxVM 文档。
注 - 如果要从正在运行多个 Oracle RAC 数据库的群集中删除 Oracle RAC 数据库,请忽略此过程中的剩余步骤。
# clresourcegroup delete -F rac-fmwk-rg
指定要删除的资源组。
# clresourcegroup delete -F vucmm-fmwk-rg
指定要删除的资源组。
# clresourcetype unregister resource-type-list
以逗号分隔的方式指定要取消注册的资源类型的名称列表。有关与 Support for Oracle RAC 关联的资源类型列表,请参见自动生成 Oracle Solaris Cluster 对象的名称。
为此请使用 uninstaller 程序。有关更多信息,请参见《Sun Java Enterprise System 5 Update 1 Installation Guide for UNIX》中的第 8 章 "Uninstalling"。
示例 7-2 从群集中删除 Support for Oracle RAC
本示例显示了从四节点群集的所有节点中删除 Support for Oracle RAC 所需的操作序列。此群集中的节点名为 pclus1、pclus2、pclus3 和 pclus4。仅在群集上配置了一个 Oracle RAC 数据库。
本示例中 Support for Oracle RAC 的配置如下:
Oracle RAC 的版本为 10g 发行版 2。
Solaris Volume Manager for Sun Cluster 上的 Sun QFS 共享文件系统用于存储 Oracle 文件。
用于 Oracle 文件的文件系统的挂载点如下:
Oracle 数据库文件:/db_qfs/OraData
Oracle 二进制文件和相关文件:/db_qfs/OraHome
oradg 磁盘集仅供 Oracle RAC 数据库使用。
Oracle RAC 数据库的名称为 swb。
Sun QFS 共享文件系统使用名为 oradg 的 Solaris Volume Manager for Sun Cluster 多属主磁盘集。示例 3-1 显示了此磁盘集的创建过程。
该配置使用多属主卷管理器框架资源组。
下表显示了本示例中资源组的配置。
|
图 A-2 中显示了此配置所需的资源组。
要删除 Oracle RAC 数据库的资源组,请运行以下命令:
# clresourcegroup delete -F rac_server_proxy-rg
删除此资源组之后,使用 Oracle 实用程序删除以下项目:
Oracle RAC 数据库
Oracle RAC 软件
Oracle Clusterware 软件
删除这些项目超出了本示例的范围。
要禁用 Oracle Clusterware 框架资源,请运行以下命令:
# clresource disable crs_framework-rs
要删除包含可伸缩文件系统挂载点资源的资源组,请运行以下命令:
# clresourcegroup delete -F scalmnt-rg
要删除包含 Sun QFS 元数据服务器资源的资源组,请运行以下命令:
# clresourcegroup delete -F qfsmds-rg
删除此资源组之后,使用 Sun QFS 实用程序删除用于 Oracle 文件的 Sun QFS 共享文件系统。删除这些文件系统超出了本示例的范围。
要删除包含可伸缩设备组资源的资源组,请运行以下命令:
# clresourcegroup delete -F scaldg-rg
要销毁 Solaris Volume Manager for Sun Cluster 多属主磁盘集 oradg,请运行以下命令:
# metaclear -s oradg -a # metaset -s oradg -d \ -f /dev/did/dsk/d8 /dev/did/dsk/d9 /dev/did/dsk/d15 /dev/did/dsk/d16 # metaset -s oradg -d -h pclus1 pclus2 pclus3 pclus4
将从磁盘集中删除以下全局设备:
/dev/did/dsk/d8
/dev/did/dsk/d9
/dev/did/dsk/d15
/dev/did/dsk/d16
要删除 RAC 框架资源组,请运行以下命令:
# clresourcegroup delete -F rac-framework-rg
要删除多属主卷管理器框架资源组,请运行以下命令:
# clresourcegroup delete -F vucmm-framework-rg
要取消注册已删除的每个资源的资源类型,请运行以下命令:
# clresourcetype unregister \ SUNW.scalable_rac_server_proxy,\ SUNW.ScalMountPoint,\ SUNW.qfs,\ SUNW.ScalDeviceGroup,\ SUNW.rac_svm,\ SUNW.crs_framework,\ SUNW.rac_udlm,\ SUNW.rac_framework
此配置正在 SPARC 平台上运行。因此,SUNW.rac_udlm 位于要取消注册的资源类型列表中。
取消注册这些资源类型之后,将执行以下操作:
删除 Support for Oracle RAC 软件包
重新引导群集中的每个节点
这些操作超出了本示例的范围。
执行此任务可从选定的节点中删除 Support for Oracle RAC。
在正在运行多个 Oracle RAC 数据库的群集上,执行此任务可从选定的节点中删除 Oracle RAC 数据库。删除的 Oracle RAC 数据库将继续在其他群集节点上运行。剩余的 Oracle RAC 数据库将继续在选定的节点上运行。
该任务涉及按以下顺序从以下资源组中删除选定的节点:
Oracle RAC 数据库资源组
包含逻辑主机名资源的资源组
包含可伸缩文件系统挂载点资源的资源组
包含 Sun QFS 元数据服务器资源的资源组
包含可伸缩设备组资源的资源组
RAC 框架资源组
![]() | 注意 - 可能需要执行此任务从正在运行多个 Oracle RAC 数据库的群集的选定节点中删除 Oracle RAC 数据库。在这种情况下,请勿从包含剩余的 Oracle RAC 数据库所依赖的资源的任何资源组中删除节点。例如,您可能已将多个数据库文件系统配置为依赖于单个设备组。在这种情况下,请勿从包含可伸缩设备组资源的资源组中删除节点。类似地,如果多个数据库依赖于 RAC 框架资源组,请勿从此资源组中删除节点。 |
如果使用 Oracle 10g 发行版 1,请忽略此步骤。对于 Oracle 10g 发行版 1,未配置 Oracle RAC 数据库的资源组。
对于要删除的每个 Oracle RAC 数据库,请执行以下步骤:
# clresourcegroup offline -n nodelist rac-db-rg
以逗号分隔的方式指定要使资源组从中脱机的群集节点列表。
指定要使其脱机的资源组的名称。
# clresourcegroup remove-node -n nodelist rac-db-rg
以逗号分隔的方式指定要从资源组中删除的群集节点列表。
指定要从中删除节点的资源组的名称。
如果使用 Oracle 10g 发行版 1、Oracle10g 发行版 2 或 11g,请忽略此步骤。对于 Oracle 10g 发行版 1、10g 发行版 2 和 11g,未配置包含逻辑主机名资源的资源组。
对于要从中删除节点的每个资源组,请执行以下步骤:
# clresourcegroup switch -n node-to-stay lh-rg
指定要将资源组切换到的节点。此节点必须是不从中删除 Support for Oracle RAC 的节点。
指定要切换到另一个节点的资源组的名称。
# clresourcegroup remove-node -n nodelist lh-rg
以逗号分隔的方式指定要从资源组中删除的群集节点列表。
指定要从中删除节点的资源组的名称。
不再需要这些资源组,因为资源组提供的 Oracle RAC 数据库实例将被删除。
请勿删除在步骤 3 中仅从中删除了辅助节点的任何资源组。
对于要删除的每个资源组,请键入以下命令:
# clresourcegroup remove -F lh-rg-rm-prim
指定要删除的资源组的名称。
如果使用 Oracle 9i 或 Oracle 10g 发行版 1,请忽略此步骤。对于 Oracle 9i 和 Oracle 10g 发行版 1,未配置表示 Oracle Solaris Cluster 资源的 Oracle Clusterware 资源。
注 - 在此步骤中,将提供 Oracle 10g 发行版 2 或 11g 的 Oracle 命令语法。如果使用 10g 发行版 2 或 11g 以外的 Oracle 版本,有关正确的命令语法,请参见 Oracle 文档。
# crs-home/bin/crs_register ora.dbname.sid.inst \ -update -r "ora.node-name.vip"
指定 Oracle Clusterware 主目录。此目录包含 Oracle Clusterware 二进制文件和 Oracle Clusterware 配置文件。
指定 Oracle Clusterware 资源表示的数据库实例的数据库名称。
指定 Oracle Clusterware 资源表示的数据库实例的 Oracle SID。
指定运行 Oracle Clusterware 资源的节点的主机名。
对于 Oracle 组件所依赖的可伸缩设备组和可伸缩文件系统挂载点,已为每个 Oracle Solaris Cluster 资源配置了 Oracle Clusterware 资源。
如果使用 Oracle 9i 或 Oracle 10g 发行版 1,请忽略此步骤。对于 Oracle 9i 和 Oracle 10g 发行版 1,未配置表示 Oracle Solaris Cluster 资源的 Oracle Clusterware 资源。
注 - 在此步骤中,将提供 Oracle 10g 发行版 2 或 11g 的 Oracle 命令语法。如果使用 10g 发行版 2 或 11g 以外的 Oracle 版本,有关正确的命令语法,请参见 Oracle 文档。
对于要删除的每个 Oracle Clusterware 资源,请对要从中删除资源的每个节点执行以下步骤:
# crs-home/bin/crs_stop sun.node-name.sc-rs
指定 Oracle Clusterware 主目录。此目录包含 Oracle Clusterware 二进制文件和 Oracle Clusterware 配置文件。
指定运行 Oracle Clusterware 资源的节点的主机名。
指定 Oracle Clusterware 资源表示的 Oracle Solaris Cluster 资源的名称。
# crs-home/bin/crs_unregister sun.node-name.sc-rs
指定 Oracle Clusterware 主目录。此目录包含 Oracle Clusterware 二进制文件和 Oracle Clusterware 配置文件。
指定运行 Oracle Clusterware 资源的节点的主机名。
指定 Oracle Clusterware 资源表示的 Oracle Solaris Cluster 资源的名称。
# crs-home/bin/crs_profile -delete sun.node-name.sc-rs \ -dir /var/cluster/ucmm/profile
指定 Oracle Clusterware 主目录。此目录包含 Oracle Clusterware 二进制文件和 Oracle Clusterware 配置文件。
指定运行 Oracle Clusterware 资源的节点的主机名。
指定 Oracle Clusterware 资源表示的 Oracle Solaris Cluster 资源的名称。
Oracle RAC 数据库
Oracle Clusterware
如果没有包含 Sun QFS 元数据服务器资源的已配置资源组,请忽略此步骤。
# clresourcegroup switch -n node-to-stay qfs-mds-rg
指定要将资源组切换到的节点。此节点必须是不从中删除 Support for Oracle RAC 的节点。
指定要切换到另一个节点的资源组的名称。
如果未配置包含可伸缩文件系统挂载点资源的资源组,请忽略此步骤。
对于要从中删除节点的每个资源组,请执行以下步骤:
如果未配置包含 Sun QFS 元数据服务器资源的资源组,请忽略此步骤。
要修改的资源组是您在步骤 8 中切换到另一个节点的资源组。
# clresourcegroup remove-node -n nodelist qfs-mds-rg
以逗号分隔的方式指定要从资源组中删除的群集节点列表。
指定要从中删除节点的资源组的名称。
有关执行此任务的说明,请参见 "Using SAM-QFS With Sun Cluster"(将 SAM-QFS 与 Sun Cluster 配合使用)。
如果未配置包含可伸缩设备组资源的资源组,请忽略此步骤。
对于要从中删除节点的每个资源组,请执行以下步骤:
执行此步骤的方式取决于可伸缩设备组的类型。
# metaset -s scal-dg-ms -d -h nodelist
指定要从中删除节点的磁盘集的名称。
以空格分隔的方式指定要从磁盘集中删除的节点列表。
有关更多信息,请参见 VxVM 文档。
注 - 如果要从正在运行多个 Oracle RAC 数据库的群集的选定节点中删除 Oracle RAC 数据库,请忽略此过程中的剩余步骤。
# clresourcegroup offline -n nodelist vucmm-fmwk-rg
以逗号分隔的方式指定要使资源组从中脱机的群集节点列表。
指定要使其脱机的资源组的名称。
# clresourcegroup remove-node -n nodelist vucmm-fmwk-rg
以逗号分隔的方式指定要从资源组中删除的群集节点列表。
指定要从中删除节点的资源组的名称。
为此请使用 uninstaller 程序。有关更多信息,请参见《Sun Java Enterprise System 5 Update 1 Installation Guide for UNIX》中的第 8 章 "Uninstalling"。
示例 7-3 从选定的节点中删除 Support for Oracle RAC
本示例显示了从四节点群集的节点 pclus3 和 pclus4 中删除 Support for Oracle RAC 所需的操作序列。
本示例中 Support for Oracle RAC 的配置如下:
Oracle RAC 的版本为 10g 发行版 2。
Solaris Volume Manager for Sun Cluster 上的 Sun QFS 共享文件系统用于存储 Oracle 文件。
用于 Oracle 文件的文件系统的挂载点如下:
Oracle 数据库文件:/db_qfs/OraData
Oracle 二进制文件和相关文件:/db_qfs/OraHome
oradg 磁盘集仅供 Oracle RAC 数据库使用。
Oracle RAC 数据库的名称为 swb。
Sun QFS 共享文件系统使用名为 oradg 的 Solaris Volume Manager for Sun Cluster 多属主磁盘集。示例 3-1 显示了此磁盘集的创建过程。
该配置使用多属主卷管理器框架资源组。
下表显示了本示例中资源组的配置。
|
图 A-2 中显示了此配置所需的资源组。
要从 Oracle RAC 数据库的资源组中删除节点 pclus3 和 pclus4,请运行以下命令:
# clresourcegroup offline -n pclus3,pclus4 rac_server_proxy-rg # clresourcegroup remove-node -n pclus3,pclus4 rac_server_proxy-rg
要从 Oracle RAC 数据库的 Oracle Clusterware 资源的节点列表中删除节点 pclus3 和 pclus4,请运行以下命令:
# /db_qfs/OraHome/crs/bin/crs_register ora.swb.swb3.inst \ -update -r "ora.pclus3.vip" # /db_qfs/OraHome/crs/bin/crs_register ora.swb.swb4.inst \ -update -r "ora.pclus4.vip"
要从节点 pclus3 和 pclus4 中删除表示 Oracle Solaris Cluster 资源的 Oracle Clusterware 资源,请运行以下命令:
Removal of resource for Oracle database files from node plcus3 # /db_qfs/OraHome/crs/bin/crs_stop sun.pclus3.scaloramnt-OraData-rs # /db_qfs/OraHome/crs/bin/crs_unregister sun.pclus3.scaloramnt-OraData-rs # /db_qfs/OraHome/crs/bin/crs_profile -delete sun.pclus3.scaloramnt-OraData-rs \ -dir /var/cluster/ucmm/profile Removal of resource for Oracle binary files from node plcus3 # /db_qfs/OraHome/crs/bin/crs_stop sun.pclus3.scaloramnt-OraHome-rs # /db_qfs/OraHome/crs/bin/crs_unregister sun.pclus3.scaloramnt-OraHome-rs # /db_qfs/OraHome/crs/bin/crs_profile -delete sun.pclus3.scaloramnt-OraHome-rs \ -dir /var/cluster/ucmm/profile Removal of resource for Oracle database files from node plcus4 # /db_qfs/OraHome/crs/bin/crs_stop sun.pclus4.scaloramnt-OraData-rs # /db_qfs/OraHome/crs/bin/crs_unregister sun.pclus4.scaloramnt-OraData-rs # /db_qfs/OraHome/crs/bin/crs_profile -delete sun.pclus4.scaloramnt-OraData-rs \ -dir /var/cluster/ucmm/profile Removal of resource for Oracle binary files from node plcus4 # /db_qfs/OraHome/crs/bin/crs_stop sun.pclus4.scaloramnt-OraHome-rs # /db_qfs/OraHome/crs/bin/crs_unregister sun.pclus4.scaloramnt-OraHome-rs # /db_qfs/OraHome/crs/bin/crs_profile -delete sun.pclus4.scaloramnt-OraHome-rs \ -dir /var/cluster/ucmm/profile
该命令可删除表示以下 Oracle Solaris Cluster 资源的 Oracle Clusterware 资源:
scaloramnt-OraData-rs-类型为 SUNW.ScalMountPoint 的资源,表示数据库文件的文件系统挂载点
scaloramnt-OraHome-rs-类型为 SUNW.ScalMountPoint 的资源,表示二进制文件和关联文件的文件系统挂载点
从节点 pclus3 和 pclus4 中删除资源之后,使用 Oracle 实用程序从这些节点中删除以下项目:
Oracle RAC 数据库
Oracle RAC 软件
Oracle Clusterware 软件
删除这些项目超出了本示例的范围。
要将包含 Sun QFS 元数据服务器资源的资源组切换到节点 pclus1,请运行以下命令:
# clresourcegroup switch -n pclus1 qfsmds-rg
要从包含可伸缩文件系统挂载点资源的资源组中删除节点 pclus3 和 pclus4,请运行以下命令:
# clresourcegroup offline -n pclus3,pclus4 scalmnt-rg # clresourcegroup remove-node -n pclus3,pclus4 scalmnt-rg
要从包含 Sun QFS 元数据服务器资源的资源组的节点列表中删除节点 pclus3 和 pclus4,请运行以下命令:
# clresourcegroup remove-node -n pclus3,pclus4 qfsmds-rg
从节点列表中删除节点 pclus3 和 pclus4 之后,Sun QFS 共享文件系统的配置将从这些节点中删除。此操作超出了本示例的范围。
要从包含可伸缩设备组资源的资源组中删除节点 pclus3 和 pclus4,请运行以下命令:
# clresourcegroup offline -n pclus3,pclus4 scaldg-rg # clresourcegroup remove-node -n pclus3,pclus4 scaldg-rg
要从 Solaris Volume Manager for Sun Cluster 多属主磁盘集 oradg 中删除节点 pclus3 和 pclus4,请运行以下命令:
# metaset -s oradg -d -h pclus3 pclus4
要从 RAC 框架资源组中删除节点 pclus3 和 pclus4,请运行以下命令:
# clresourcegroup offline -n pclus3,pclus4 rac-framework-rg # clresourcegroup remove-node -n pclus3,pclus4 rac-framework-rg
要从多属主卷管理器框架资源组中删除节点 pclus3 和 pclus4,请运行以下命令:
# clresourcegroup offline -n pclus3,pclus4 vucmm-framework-rg # clresourcegroup remove-node -n pclus3,pclus4 vucmm-framework-rg
从框架资源组中删除节点 pclus3 和 pclus4 之后,可以从节点中选择性地删除 Support for Oracle RAC 软件包。
完成删除之后,资源组和资源的状态如下所示:
# clresourcegroup status === Cluster Resource Groups === Group Name Node Name Suspended Status ---------- --------- --------- ------ rac-framework-rg pclus1 No Online pclus2 No Online vucmm-framework-rg pclus1 No Online pclus2 No Online scaldg-rg pclus1 No Online pclus2 No Online qfsmds-rg pclus1 No Online pclus2 No Offline scalmnt-rg pclus1 No Online pclus2 No Online rac_server_proxy-rg pclus1 No Online pclus2 No Online # clresource status === Cluster Resources === Resource Name Node Name State Status Message ------------- --------- ----- -------------- rac-framework-rs pclus1 Online Online pclus2 Online Online rac-udlm-rs pclus1 Online Online pclus2 Online Online crs_framework-rs pclus1 Online Online pclus2 Online Online vucmm-svm-rs pclus1 Online Online pclus2 Online Online scaloradg-rs pclus1 Online Online - Diskgroup online pclus2 Online Online - Diskgroup online qfs-mds-rs pclus1 Online Online - Service is online. pclus2 Offline Offline scaloramnt-OraData-rs pclus1 Online Online pclus2 Online Online scaloramnt-OraHome-rs pclus1 Online Online pclus2 Online Online rac_server_proxy-rs pclus1 Online Online - Oracle instance UP pclus2 Online Online - Oracle instance UP