暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

MOS|RAC 和 Oracle 集群件最佳实践和入门工具包(独立于平台)(文档 ID 810394.1)

原创 闫伟 2021-07-15
1007


版权所有 (c) 2021,Oracle 保留所有权利。


  RAC 和 Oracle 集群件最佳实践和入门工具包(独立于平台)(文档 ID 810394.1) 转到底部 

在本文件中
目的
范围
细节
RAC 平台特定的入门套件和最佳实践
RAC 平台通用负载测试和系统测试计划大纲
Grid Infrastructure Platform Generic Grid Infrastructure 12.1.0.2 到 Grid Infrastructure 12.2.0.1 的逐步升级指南
ORAchk(原 RACcheck)——Oracle 配置审计工具
现在要做的 11 件事情来稳定您的 RAC 集群环境
设计注意事项
一般设计注意事项
网络注意事项
存储注意事项(包括 ASM)
集群件和网格基础设施配置注意事项
虚拟化注意事项
安装注意事项
修补注意事项
升级注意事项
集群件、ASM 和网格基础设施升级注意事项
RDBMS 升级注意事项
RAC 的数据库配置注意事项
数据库初始化参数注意事项
性能调优注意事项
数据库网络注意事项
一般数据库注意事项
诊断和故障排除
一般注意事项
集群件和网格基础设施诊断
RAC 数据库诊断
修补诊断 (OPatch)
社区讨论

参考
适用于:
Oracle 统一目录 - 版本 11.1.2.3.0 至 11.1.2.3.0 [版本 11g]
Oracle 数据库 - 企业版 - 版本 10.2.0.1 及更高版本
Oracle 数据库 Exadata 云机 - 版本 N/A 及更高版本
Oracle 云基础设施 - 数据库服务- 版本 N/A 及更高版本
Oracle 数据库 Exadata Express 云服务 - 版本 N/A 及更高版本
本文档中的信息适用于任何平台。
目的
Oracle Real Application Clusters (RAC) 系列最佳实践和入门工具包说明的目标是为客户提供有关实施、升级和维护 Oracle RAC 系统的通用和特定于平台的最佳实践的快速知识转移。本文档是根据 Oracle 在其全球 RAC 客户群方面的经验编写和维护的。

此入门工具包并非要替换或取代 Oracle 文档集,而是作为对这些文档集的补充。必须阅读、理解和参考 Oracle 文档,以便为本入门工具包可能无法明确解决的任何问题提供答案。

所有建议都应由您自己的运营团队仔细审查,并且只有在根据相关风险衡量的潜在收益需要实施时才应实施。风险评估只能在详细了解系统、应用程序和业务环境的情况下进行。

由于每个客户环境都是独一无二的,任何 Oracle 数据库实施(包括 Oracle RAC 实施)的成功都取决于成功的测试环境。因此,在生产环境中实施之前,必须使用作为目标生产环境副本的测试环境彻底测试和验证此入门套件中的任何建议,以确保不存在与建议相关的负面影响制成。

范围
本文适用于所有新的和现有的 RAC 实现以及 RAC 升级。

细节
RAC 平台特定的入门套件和最佳实践
虽然本说明侧重于平台无关(通用)RAC 最佳实践,但以下说明包含详细的特定于平台的最佳实践,包括分步安装手册。

文档 811306.1 RAC 和 Oracle 集群件最佳实践和入门工具包 (Linux)
文档 811280.1 RAC 和 Oracle 集群件最佳实践和入门工具包 (Solaris)
文档 811271.1 RAC 和 Oracle 集群件最佳实践和入门工具包 (Windows)
文档 811293.1 RAC 和 Oracle 集群件最佳实践和入门工具包 (AIX)
文档 811303.1 RAC 和 Oracle Clusterware 最佳实践和入门工具包 (HP-UX)


RAC 平台通用负载测试和系统测试计划大纲
任何成功实施的关键任务,尤其是任务关键的最大可用性环境,是测试。对于 RAC 环境,测试应包括负载生成和故障注入测试。负载测试将允许测量系统在重负载下的反应,而故障注入测试将有助于确保系统在发生那些不可避免的硬件和/或软件故障时按设计做出反应。以下文档将为您提供执行此关键测试的指导。这些文档将用于验证您的系统设置和配置,也可作为在某些类型的故障情况下练习响应和建立程序的手段。

单击此处获取有关可用 RAC 系统负载测试工具的白皮书
单击此处获取 10gR2 和 11gR1的平台通用 RAC 系统测试计划大纲
单击此处获取 11gR2 的平台通用 RAC 系统测试计划大纲


Grid Infrastructure Platform Generic Grid Infrastructure 12.1.0.2 到 Grid Infrastructure 12.2.0.1 的逐步升级指南
文档:2379389.1 Grid Infrastructure 12.1.0.2 到 12.2.0.1 的逐步升级


ORAchk(原 RACcheck)——Oracle 配置审计工具
ORAchk 是一种配置审计工具,旨在审计 Real Application Clusters (RAC)、Oracle Clusterware (CRS)、自动存储管理 (ASM) 和网格基础设施环境中的各种重要配置设置。该实用程序用于验证由 RAC 保障开发和支持团队维护的 Oracle Real Application Clusters (RAC) 最佳实践和入门工具包说明系列中定义的最佳实践和成功因素。目前ORAchk 支持Linux(x86 和x86_64)、Solaris SPARC 和AIX(带有bash shell)平台。强烈鼓励那些在 ORAchk 支持的平台上运行 RAC 的客户使用此工具识别可能影响集群稳定性的潜在配置问题。

文档 1268927.1 ORAchk - Oracle 配置审计工具

注意: Oracle 不断地从全球客户群中生成和维护最佳实践和成功因素。因此,ORAchk 实用程序经常使用此信息进行更新。也就是说,建议您在执行之前确保您使用的是 ORAchk 版本。


现在要做的 11 件事情来稳定您的 RAC 集群环境
作为预防因常见问题导致集群不稳定的主动措施,Oracle RAC 主动支持团队编制了一份可能影响 RAC 集群稳定性的前 11 个问题的列表。尽管所有这些建议都包含在最佳实践和入门套件说明系列中,但我们强烈建议您查看以下说明,因为我们确实认为这些是成功的关键因素。

文档 1344678.1为稳定您的 RAC 集群环境现在要做的 11 件事


设计注意事项
以下设计注意事项提供有关基础架构(独立于平台)的指导和最佳实践信息,以支持 Oracle RAC 实施。此信息不仅与新安装和升级有关,而且还将为支持现有 RAC 实施的人员提供有用的信息。

一般设计注意事项
为了简化堆栈并简化供应商交互,Oracle 建议避免使用 3rd 方集群件,除非绝对必要。
建议将自动存储管理 (ASM) 用于数据库存储。有关 ASM 的其他信息可以在文档 1187723.1 中找到。
检查支持矩阵以确保产品、版本和平台组合的可支持性,或了解需要完成的任何特定步骤,这些步骤在某些此类组合的情况下是额外的。文档 337737.1
与磁盘供应商核实节点数、操作系统版本、RAC 版本、CRS 版本、网络结构和补丁是否经过认证,因为某些存储/SAN 供应商可能需要对特定数量的节点进行特殊认证。
计划和记录容量要求。与服务器供应商合作制定详细的容量计划和系统配置,但请考虑: 使用正常的容量计划流程来估计运行工作负载所需的 CPU 数量。随着 CPU 数量的增加,SMP 和 RAC 集群都有同步成本。SMP 通常对于少量 CPU 的扩展性很好,而对于大量 CPU,RAC 集群通常比 SMP 具有更好的扩展性。
消除架构中的任何单点故障。示例包括(但不限于):集群互连冗余(NIC 绑定等)、多条存储访问路径、使用 2 个或更多 HBA 或启动器和多路径软件,以及磁盘镜像/RAID。在后续部分中可以找到其他详细信息。
使用经过验证的最大可用性策略。RAC 是整个最大可用性架构中的一个组件。在http://www.oracle.com/technetwork/database/features/availability/maa-096107.html 上查看 Oracle 的最高可用性架构蓝图。
制定系统测试计划以帮助计划和练习计划外中断至关重要。本说明附有样本系统测试计划大纲,以指导您的系统测试,帮助为潜在的计划外故障做好准备。
强烈建议生产 RAC 实例不要与 DEV、TEST、QA 或 TRAINING 实例共享节点。这些额外的实例通常会给生产环境带来意想不到的性能变化。同样,强烈建议测试环境尽可能地反映生产环境。
为您的 RAC 项目实施制定分步计划是非常宝贵的。以下 OTN 文章包含示例项目大纲:http : //www.oracle.com/technetwork/articles/haskins-rac-project-guide-099429.html
网络注意事项
对于专用网络,强烈建议使用 10 Gigabit Ethernet,最低要求是 1 Gigabit Ethernet。

根据RFC952 - DoD Internet 主机表规范,主机名或域名中不使用下划线。这同样适用于网络、主机、网关或域名。
VIP 和 SCAN VIP 必须与公共接口位于同一子网上。有关其他信息,请参阅了解 SCAN VIP 白皮书。
默认网关必须与 VIP(包括 SCAN VIP)位于同一子网上,以防止 VIP 启动/停止/故障转移问题。对于 11gR2,OUI 会检测并报告此情况,如果忽略该检查,这将导致无法启动 VIP,从而导致安装本身失败。
建议 SCAN 名称(11gR2 及更高版本)通过 DNS 循环解析至少 3 个 IP 地址,而不管集群的大小。有关其他信息,请参阅了解 SCAN VIP 白皮书。
为避免名称解析问题,请确保为 HOSTS 文件和 DNS 提供 VIP 和公共主机名。SCAN 不能在 HOSTS 文件中,因为 HOSTS 文件只能表示 1:1 主机到 IP 的映射。
所有节点上的网络接口必须具有相同的名称(例如 eth1 -> eth1 支持 VIP 和 eth2 -> eth2 支持私有互连)。
网络接口卡 (NIC) 名称不得包含“.”
专用互连的巨型帧是增强缓存融合操作性能的推荐最佳实践。参考:文档 341788.1
使用不可路由的网络地址进行私有互连;A 类:10.0.0.0 到 10.255.255.255,B 类:172.16.0.0 到 172.31.255.255,C 类:192.168.0.0 到 192.168.255.255。有关其他信息,请参阅RFC1918 和文档 338924.1。
确保网络接口在速度、双工等方面配置正确。有多种工具可以监控和测试网络:ethtool、iperf、netperf、spray 和 tcp。参见文档 563566.1。

为了避免公共网络或私有互连网络成为单点故障,Oracle 强烈建议在每个集群节点上配置一组冗余的公共网络接口卡 (NIC) 和私有互连 NIC。文档 787420.1。从 11.2.0.2 开始,Oracle Grid Infrastructure 可以为专用互连(不是公共网络)提供冗余和负载平衡,这是完整 11.2.0.2 堆栈(必须使用 11.2.0.2 数据库)的 NIC 冗余的首选方法。更多信息可以在文档 1210883.1 中找到。

注意:如果使用 11.2.0.2 冗余互连/HAIP 功能 - 目前需要将所有互连接口放置在单独的子网上。如果接口都在同一个子网上,并且电缆是从路由表中的第一个 NIC 拉出的,则会发生无重启或节点重启。有关此要求的技术说明,请参阅文档 1481481.1。

要获得更可预测的硬件发现,请将 hba 和 nic 卡放在网格中每台服务器上相同的相应插槽中。

专用网络需要使用交换机(或冗余交换机)(不支持交叉电缆)。

强烈建议将专用冗余交换机用于专用互连,因为在交换机上部署专用互连(即使在使用 VLAN 时)可能会使互连链路在更大的 IP 网络拓扑中面临拥塞和不稳定性。如果在 VLAN 上部署互连,则 VLAN 到不可路由的子网应该 1:1 映射,并且 VLAN 不应跨越多个 VLAN(标记)或多个交换机。此环境中的部署问题包括较大 IP 网络拓扑更改时的生成树循环、可能导致数据包泛滥的非对称路由以及缺乏对 VLAN/端口的细粒度监控。参考错误 9761210。

如果在 VLAN 上部署集群互连,请查看Oracle RAC 和集群件互连虚拟局域网 (VLAN)白皮书中的注意事项。

对于具有高容量要求的工作负载,请考虑在互连上使用 Infiniband。Infiniband 还可以通过降低延迟来提高性能。当 Infiniband 到位时,RDS 协议可用于进一步减少延迟。请参阅文档 751343.1了解更多详情。

在 12.1.0.1 中,公共网络支持 IPv6,私有网络必须使用 IPv4。从 12.2.0.1 开始,公共和私有接口都完全支持 IPv6。有关详细信息,请参阅Oracle 数据库 IPv6 发展方向白皮书。
对于 Grid Infrastructure 11.2.0.2 版本,必须允许 230.0.1.0 子网的专用网络上的多播流量。 补丁:9974223(包含在 GI PSU 11.2.0.2.1 及更高版本中)适用于 Oracle Grid Infrastructure 11.2.0.2,可在专用网络上的 224.0.0.251 多播地址上启用多播。必须允许在专用网络上为这 2 个地址之一进行多播(假设已应用补丁)。文档 1212703.1 中提供了其他信息以及测试多播功能的程序。
存储注意事项(包括 ASM)
使用两个或多个 HBA 或通过这些 HBA 上的多路径软件启动器实现对存储阵列的多条访问路径。在可能的情况下,使用伪设备(多路径 I/O)作为 ASM 的磁盘串。例如:EMC PowerPath、Veritas DMP、Sun Traffic Manager、Hitachi HDLM、IBM SDDPC、Linux 2.6 Device Mapper。这对于 I/O 负载平衡和故障转移很有用。参考:文档 294869.1和 多路径最佳实践白皮书。
当 RAC 与 NFS 一起使用时,确保 NFS 磁盘的正确挂载选项。文档 359515.1中详细介绍了每个平台的挂载选项。
ASM 是 Oracle 数据库存储的当前和未来方向。也就是说,强烈推荐在 RAC 环境中使用 ASM(与集群文件系统相对)的最佳实践。使用 Oracle RAC 标准版时,数据文件存储需要 ASM。
遵守 ASM 最佳实践。参考:文档 265633.1 ASM 技术最佳实践。尽管没有明确说明,但本文中提出的这些最佳实践也适用于 11gR2。11gR2 ASM 最佳实践也记录在Oracle 自动存储管理管理员指南 11g 第 2 版 (11.2) 中。
通过自定义ASM 磁盘字符串确保 ASM 磁盘发现时间最佳,请参阅文档 1608549.1改进 ASM 磁盘发现 (ASM_DISKSTRING) 时间最佳实践。
建议在单独的物理磁盘上维护不超过 2 个 ASM 磁盘组,一个用于数据库区,另一个用于闪存恢复区。RAID 存储阵列 LUN 可用作 ASM 磁盘,以最大限度地减少提供给操作系统的 LUN 数量。
每个 ASM 磁盘组(每个 LUN 位于单独的 RAID 组中)至少应使用 4 个大小和性能相同的 LUN 以确保最佳性能。
使用高端存储阵列时创建外部冗余磁盘组。高端存储阵列通常提供硬件 RAID 保护。在不使用硬件 RAID 或需要基于主机的卷管理功能(例如跨存储系统镜像)时使用 Oracle ASM 镜像冗余。在地理上分离的站点(扩展集群)之间进行镜像时,您可以在配置中使用 Oracle ASM 镜像。

对于 11g,默认情况下在 ASM 实例上启用自动内存管理 (AMM),即使未明确设置 MEMORY_TARGET 参数也是如此。MEMORY_TARGET 使用的默认值通常是不够的,应该增加到 1536MB。如果您在 ASM 实例中遇到 ORA-4031 错误,则可能需要调整 AMM 设置。查看文档 1370925.1(ASM 实例报告 ORA-04031 错误)以获取有关正确设置以避免共享池耗尽的指导。
对于 10g,增加 ASM 实例 SGA 参数大小分配的默认值:
SHARED_POOL_SIZE =128M - 此外,前五个磁盘组之后的每个磁盘组的 SHARED_POOL_SIZE 应该增加 500KB。
LARGE_POOL =12M
DB_CACHE_SIZE =64M
进程=150
在 11g 环境中,当多个数据库共享同一个 ASM 实例时,可能需要修改 ASM 进程参数。虽然经验法则是 150 个进程,但可用于确定适当值的公式是:
ASM 进程 = 50 x(<db 节点上的最大数量实例> + <前 10 个的 <1>)+ 10 x(<10 个之后的后续实例>)
选择一个硬件 RAID 条带大小,它是 2 的幂并且小于或等于 Oracle ASM 分配单元的大小。
如果将大于 2TB 的 LUN 提供给 ASM 磁盘组,则可能发生 ORA-15196(ASM 块损坏)。作为修复的结果,如果指定了大于 2TB 的磁盘,则会引发 ORA-15099。这与 asmlib 的存在无关。解决方法:不要向磁盘组添加超过 2 TB 大小的磁盘。参考:文档 6453944.8
在某些平台上,可能会在警报日志中看到有关 AIO 限制的重复警告:
“警告:Oracle 进程耗尽操作系统内核 I/O 资源。” 应用补丁 6687381,可在许多平台上使用。此问题影响 10.2.0.3、10.2.0.4 和 11.1.0.6。它已在 11.1.0.7 中修复。文档 6687381.8
在从 10.2 版到 11.1 或 11.2 版的 ASM 升级过程中发现了错误 5100163(可能的元数据损坏)的发生,此错误只会发生在 AU > 1 MB 的 ASM 磁盘组(在执行 ASM 升级之前)。在 11.1 或 11.2 版上直接创建的新磁盘组不会遇到此错误。
为了防止任何错误 5100163 的发生,已生成公共警报并且可通过 My Oracle Support 看到该警报。参考:文档 1145365.1警报:在 ASM 从 10gR2 升级到 11gR2 后,查询 v$asm_file 给出 ORA-15196。简而言之,您需要运行“alter diskgroup <DG_NAME> check all repair”来验证和修复任何升级的磁盘组。
集群件和网格基础设施配置注意事项
对于 11gR2 之前的版本,建议将投票磁盘存储在 RAW 或块设备(取决于操作系统和 Oracle 版本)上,并且无论底层存储配置如何,都使用 Oracle 提供的冗余。建议使用两个 OCR。Voting Disk 应该保持为奇数,最小为 3。 建议使用奇数 Voting Disk,因为丢失 1/2 或更多的 Voting Disk 会导致节点从集群中被逐出,或者节点将自己逐出出集群。
在 Grid Infrastructure 11gR2 中,RAW(和块)设备已被弃用,使 ASM 成为存储 OCR 和投票磁盘的推荐方法。在 11gR2 及更高版本的 ASM 中存储 OCR 和投票磁盘时,建议为 OCR 和投票磁盘维护一个单独的磁盘组(不在存储数据库相关文件的同一个磁盘组中)。如果您为磁盘组使用外部冗余(有关磁盘组冗余的详细信息,请参阅 ASM 注意事项),这意味着您将拥有 1 个投票磁盘和 1 个 OCR。如果不使用外部冗余,建议使用普通或高冗余。
对于 11.2.0.2,Oracle Grid Infrastructure 可以为专用互连(不是公共网络)提供冗余和负载平衡,这是完整 11.2.0.2 堆栈(必须使用 11.2.0.2 数据库)的 NIC 冗余的首选方法。更多信息可以在文档 1210883.1 中找到。
对于版本 10gR2 和 11gR1,所有平台上的最佳实践是将 CSS diagwait 参数设置为 13,以便在节点驱逐的情况下为转储诊断提供时间。如果没有来自支持部门的明确指示,不建议将 diagwait 设置为 13 以上。Oracle Clusterware 11g 第 2 版不再需要此设置。有关 diagwait 的更多详细信息,请参阅参考文档559365.1。

不要设置 ORA_CRS_HOME 环境变量(在所有平台上)。设置这个变量对于各种 Oracle 组件都会产生问题,而且对于 CRS 程序来说从来没有必要,因为它们都有包装脚本。
虚拟化注意事项
具有特定平台、版本和补丁要求的特定虚拟化技术(例如 Oracle VM)支持 Oracle Clusterware、Grid Infrastructure 和 RAC。在虚拟化环境中部署 RAC 时,必须满足RAC 虚拟化矩阵中记录的支持要求,以确保部署成功且受支持。
安装注意事项
以“真正的”root 用户身份执行 root.sh/rootupgrade.sh,而不是 sudo。切换到 root 用户执行 rootupgrade.sh 时,"su -" 或 "su - root" 提供完整的 root 环境,而 sudo、pbrun、"su root" 或 "su" 或类似工具则不提供。建议在完全root环境下执行root.sh/rootupgrade.sh。有关其他详细信息,请参阅文档 1210883.1、文档 1235944.1、文档 1259874.1和 文档 1315203.1。

建议使用本地磁盘上的本地文件系统安装 Oracle RAC 软件,以允许滚动补丁,避免单点故障以及其他因素。有关更多信息,请参阅Oracle Real Application Clusters Environment白皮书中的 Oracle Homes 。请注意,集群文件系统不支持 11gR2 Grid Infrastructure,请参阅Oracle Grid Infrastructure Installation Guide 11g Release 2 (11.2) for Linux 的第 2.5.4 节。
使用 cluvfy(集群验证实用程序)检查集群先决条件。在安装 Oracle 软件之前和期间的所有阶段使用 cluvfy。安装 11gR2 之前的版本时,下载最新版本的cluvfy OTN至关重要。文档 339939.1和文档 316817.1包含有关此主题的更多相关信息。
在执行 11gR2 之前的安装时,建议在执行任何 RDBMS 或 ASM home 安装之前将 Clusterware Home 修补到所需的级别。例如,在安装 10.2.0.1 RDBMS 之前安装 Clusterware 10.2.0.1 并修补到 10.2.0.4。
在 11gR2 之前的环境中,出于维护和可用性原因(例如,独立修补和升级),将 ASM 安装在与数据库不同的 ORACLE_HOME 中。为了便于升级到 11gR2,ASM 软件所有者应与 Clusterware 软件所有者保持一致。
从 11gR2 开始,所有补丁集都是完全可安装的版本。例如,要安装 11.2.0.2 (11gR2 Patchset 1),您将直接从 11.2.0.2 安装,而不是安装 11.2.0.1 并修补到 11.2.0.2。使用 11gR2 网格基础设施,所有补丁集都是异地升级。使用 11gR2 RDBMS,您可以执行异地或就地升级,异地是推荐的方法。更多信息可以在文档 1189783.1 中找到。
如果您以作为多个操作系统组成员的用户身份安装 Oracle Clusterware,安装程序会在集群的所有节点上安装文件,并将组所有权设置为用户当前活动或主要组的所有权。因此:确保文件 /etc/group 中列出的第一个组是当前活动组或使用以下附加命令行选项调用 Oracle Clusterware 安装,以强制安装程序在对所有文件设置组所有权时使用正确的组:runInstaller s_usergroup=current_active_group(错误 4433140)
修补注意事项
本节旨在为新的和现有的实现开发主动修补策略。对于新的实施,强烈建议在测试开始时应用适用于您平台的最新可用补丁集和适用的补丁集更新 (PSU)。如果由于内部或第 3 方应用程序认证滞后或由于其他限制而无法使用最新版本的 RDBMS,仍支持在以后的补丁中运行 CRS Home 和 ASM(或网格基础设施)Homes级别高于 RDBMS Home。作为最佳实践(有一些例外,请参阅下面参考部分中的注释),Oracle 支持建议满足以下条件:

集群件(或网格基础设施)的补丁级别或版本必须大于或等于 RDBMS Home 版本的补丁级别(到给定版本中的第 4 个点)。对于 11.2 之前的集群件,其补丁级别或版本必须大于或等于 ASM 和 RDBMS 主目录的补丁级别或版本(到给定版本中的第 4 个点)。
在修补数据库之前,ASM 或集群件 home使用 opatch 检查文件系统上的可用空间并使用文档 550522.1以估计需要多少空间以及如果在修补过程中文件系统填满时如何处理这种情况。
文档 557934.1提供了在 11gR2 之前的环境中修补 Oracle Clusterware 的基本概述,并阐明了如何通过修补更新 Oracle Clusterware 组件。
如果将 Grid Infrastructure 从 11.2.0.1 修补到 11.2.0.2,则必须查看文档 1312225.1 -“升级到 Grid Infrastructure 11.2.0.2 之前需要考虑的事项”。本文档说明了确保成功升级到 11.2.0.2 必须遵循的所有先决条件和程序。
制定主动修补策略,以领先于最新的已知问题。保持最新的补丁集更新(如文档850471.1 中所述)并了解最新的推荐补丁(如文档756671.1 中所述)。计划定期(例如:每季度)维护窗口以保持最新的推荐 PSU 和补丁。

在 11.2.0.3 中,GI 得到了增强,可以利用广播或多播(在 230.0.1.0 或 224.0.0.251 地址上)进行引导。然而,11.2.0.3.5 GI PSU 引入了一个新问题,即有效禁用广播功能(错误 16547309)。请注意,大多数网络确实支持 224.0.0.251 多播地址上的多播,无需任何特殊配置,因此这对于 11.2.0.3.5 - 11.2.0.3.7 和 12.1.0.1 来说成为问题的几率大大降低。有关其他信息、可用补丁和纠正措施,请参阅文档 1212703.1和文档 1564555.1。

升级注意事项
本节实际上分为 2 个子节。第一部分介绍集群件、ASM 和网格基础设施升级,第二部分介绍 RDBMS 升级。

集群件、ASM 和网格基础设施升级注意事项
对于升级到 11.2.0.3 及更高版本,利用 ORAchk 升级准备评估来帮助进行升级前需求规划和升级后验证。有关其他详细信息,请参阅文档 1268927.2 ORAchk的升级准备选项卡。

以“真正的”root 用户身份执行 root.sh/rootupgrade.sh,而不是 sudo。切换到 root 用户执行 rootupgrade.sh 时,"su -" 或 "su - root" 提供完整的 root 环境,而 sudo、pbrun、"su root" 或 "su" 或类似工具则不提供。建议在完全root环境下执行root.sh/rootupgrade.sh。有关更多详细信息,请参阅文档 1210883.1、文档 1235944.1、文档 1259874.1和 文档 1315203.1。

Oracle Clusterware 和 Oracle ASM 到 Grid Infrastructure 的升级总是不合适的升级。对于 11g 第 2 版 (11.2),您无法将 Oracle Clusterware 和 Oracle ASM 就地升级到现有主目录。
如果现有的 Oracle Clusterware 主目录是共享主目录,请注意您可以将非共享主目录用于集群的 Oracle Grid Infrastructure。
在开始升级或升级到 Grid Infrastructure 之前,必须检查以下内容(取决于目标版本):
文档 1312225.1 - 升级到 Grid Infrastructure 之前需要考虑的事项 11.2.0.2
文档 1363369.1 - 升级到 11.2.0.3/11.2.0.4 之前需要考虑的事项 Grid Infrastructure/ASM
从上述文件中需要注意的几个要点如下(详细信息可在注释中找到):
验证现有集群件和 ASM(或网格基础设施)配置的健康状况
确保将所有必备补丁应用到现有的 Clusterware/ASM/Grid Infrastructure Homes,例如:
从 GI 11.2.0.1 升级到 11.2.0.2 时,必须在尝试升级之前将补丁 9706490应用到 GI 11.2.0.1 主目录。
要升级到 11.2.0.2,请验证专用互连网络上的多播功能
在执行 rootupgrade.sh(或 root.sh)之前,补丁 11.2.0.2 升级到最新的 GI PSU,相关说明可在文档 1312225.1中找到。
要将 10gR2 集群件升级到 11g,您必须从最低版本 10.2.0.3 开始,如以下 Oracle 升级指南 11gR1 http://download.oracle.com/docs/cd/B28359_01/server.111/b28300/upgrade.htm# 中所述BABCEGBC, 11gR2 GI 平台特定文档中也有类似说明。本文件声明如下:

注意:在您尝试将 Oracle Clusterware 10.2.0.x 版本升级到 Oracle Clusterware 11g 版本 1 (11.1) 之前,添加了一项新的先决条件检查以确保其为 10.2.0.3(或更高版本)。如果此检查失败,则会指示您在升级之前将 Oracle Clusterware 补丁集版本 10.2.0.3.0 或更高版本应用于现有版本。所有其他升级路径和全新安装周期不受此先决条件检查的影响。
在适用于 Oracle Clusterware (CRS)文档 338706.1 的情况下使用滚动升级。有关详细的升级帮助,请参阅适用于您的版本的相应升级指南: 文档 466181.1 10g 升级指南和文档 601807.1 Oracle 11gR1 升级指南。对于 11gR2,集群件本身的升级将滚动(旧堆栈必须在所有节点上运行),ASM 升级将针对 ASM 11.1 及更高版本滚动。ASM 11.1 之前的版本没有滚动。
如果计划在 11gR2 网格基础架构环境中运行 11gR2 之前的数据库,请查看文档 948456.1:11gR2 网格基础架构环境中的 11.2 之前的数据库问题。
11.2.0.2 HAIP 功能不会为 11.2.0.2 之前的数据库提供 NIC 冗余或负载平衡,如果计划在 11.2.0.2 Grid Infrastructure 上运行 11.2.0.2 之前的数据库,您必须使用第 3 方 NIC 冗余解决方案就像您在 11.2.0.2 之前的版本中所做的那样。
RDBMS 升级注意事项
请务必查看目标版本的升级伴侣:
Oracle 11gR2 升级配套文档 785351.1
Oracle 11gR1 升级配套文档 601807.1
查看目标版本的数据库升级指南:
Oracle 数据库升级指南 12c 第 1 版 (12.1)
Oracle 数据库升级指南 11g 第 2 版 (11.2)
Oracle 数据库升级指南 11g 第 1 版 (11.1)
升级到 11gR2 时,请务必查看升级到 Oracle Database 11g 第 2 版的最佳实践演示文稿。

有关决定将数据库升级到 11gR2 的方法的帮助,请查看升级到 Oracle 数据库 11g 第 2 版的升级方法白皮书。
从 Oracle 数据库 10g 升级到 11g:对优化器的期望:
http://www.oracle.com/technetwork/database/bi-datawarehousing/twp-sql-plan-management-11gr2-133099.pdf
对于升级数据库并需要最少停机时间的用户,请考虑使用临时逻辑备用数据库,请参阅: 文档 949322.1:Oracle11g Data Guard:数据库滚动升级 Shell 脚本。
RAC 的数据库配置注意事项
数据库初始化参数注意事项
观察与每个实例使用非常大的 SGA(例如 100GB)的 RAC 数据库的大型 SGA 相关的最佳实践。文档 1619155.1:使用超大 SGA(例如 100 GB)的 RAC 数据库的最佳实践和建议
设置PRE_PAGE_SGA =false。如果设置为 true,则会显着增加建立数据库连接所需的时间。如果客户端可能抱怨与数据库的连接速度很慢,请考虑将此参数设置为 false,这样做可以避免映射整个 SGA 和进程启动,从而节省连接时间。
对于 12.1 及更高版本PRE_PAGE_SGA行为已更改请参阅文档 ID 1987975.1
请务必监视活动服务器的数量并计算要应用于 PARALLEL_MIN_SERVERS 的平均值。这可以通过以下方式完成:
从 v$pq_syssstat 中选择 *;
然后:获取/保存“Servers Highwater”行的值
根据您的硬件调整PARALLEL_MAX_SERVERS。从 (2 * (2 个线程) *(CPU_COUNT)) = 4 x CPU 计数开始,并使用测试数据重复测试更高的值。
考虑设置FAST_START_PARALLEL_ROLLBACK。该参数决定了有多少进程用于事务恢复,这是在重做应用之后完成的。优化事务恢复对于确保意外故障后的高效工作负载非常重要。只要系统不受 CPU 限制,将其设置为 HIGH 值就是最佳实践。这会导致 Oracle 使用四倍于 CPU 计数 (4 X cpu_count) 的并行进程进行事务恢复。此参数的默认值是 LOW,或 CPU 计数的两倍 (2 X cpu_count)。
将FAST_START_MTTR_TARGET设置为以秒为单位的非零值。崩溃恢复将在此所需时间范围内完成。
在 10g 和 11g 数据库中,不应再设置初始化参数ACTIVE_INSTANCE_COUNT。这是因为 RACG 层没有考虑这个参数。作为替代方案,您应该使用一个首选实例创建服务。
对于 11gR2 之前的版本,将 PARALLEL_EXECUTION_MESSAGE_SIZE从默认值(通常为 2048)增加到 8192。对于通过 PQ 传输大量数据的基于数据仓库的系统,可以将其设置得更高。在 11gR2 版本中,PARALLEL_EXECUTION_MESSAGE_SIZE的默认值是 16K,这在大多数情况下应该足够了。
设置OPTIMIZER_DYNAMIC_SAMPLING = 1 或简单地分析您的对象,因为 10g 动态采样可以在 SQL 语句执行期间生成额外的 CR 缓冲区。
对于所有 O/S?????s Oracle 版本 10.2.0.3 到 11.0.6.0,LMON 进程可能会挂起,并且实例成员恢复 (IMR) 无法驱逐挂起的实例。这已在 11.1.0.7 中修复。这可以在 10gR2 中通过错误 5259835 进行更正。此增强功能包含在 10.2.0.4.1 和更高版本的 PSU 中,并作为 10.2.0.3 在某些平台和 10.2.0.5 中的一次性补丁。对于 11.1.0.6.0,需要配置以下设置:
_lm_rcvr_hang_check_frequency = 20
_lm_rcvr_hang_allow_time = 70
_lm_rcvr_hang_kill = 真
性能调优注意事项
在任何数据库系统、RAC 或单实例中,最显着的性能提升通常来自传统的应用程序调优技术。这些技术的好处在 RAC 数据库中更为显着。
删除非选择性索引。在 RAC 环境中,非选择性索引块可能会受到实例间争用的影响,从而增加了属于 INSERT 密集型表的索引的缓存传输频率。
为避免“检查点未完成”情况和频繁日志切换的性能影响,建议每个线程至少创建 3 个重做日志组,并且重做日志的大小允许每 15-30 分钟发生一次日志切换. 有关详细信息,请参阅文档 147468.1 >。
使用自动段空间管理 (ASSM)。ASSM 表空间自动执行空闲列表管理,并消除了为在这些表空间中创建的单个表和索引指定 PCTUSED、FREELISTS 和 FREELIST GROUPS 存储参数的要求/能力。更多细节请参见 <Document 180608.1>。
增加插入密集型应用程序的序列缓存可以提高实例对从序列中派生其值的索引键的关联性。增加应用程序序列和一些系统序列的缓存以获得更好的性能。使用可能为 10,000 或更多的大缓存值。此外,使用 NOORDER 属性是最有效的,但它不能保证按请求顺序生成序列号(这实际上是默认设置)。
注意:此建议不适用于 OLAP S$ 对象。如果重新组织它们,OLAP AW(包含所有多维数据)就会损坏,因为它们严格依赖于值的顺序。
SYS.AUDSES$ 序列的默认设置是 20,这对于可以从多个节点同时登录的 RAC 系统来说太低了。请参阅文档 395314.1。此问题已在 10.2.0.3 及更高版本中修复。
将 AWR 数据的保留期从 7 天增加到至少一个业务周期。使用 awrinfo.sql 脚本来预算需要存储在 AWR 中的信息量并因此调整大小。
在 RAC 环境中调整缓冲区缓存大小的建议类似于应用相同调整过程的单个节点。尽管实际内存要求将取决于应用程序工作负载,但一般建议大约增加 10% 的缓冲区缓存以满足扩展要求(例如:1 个节点 -?? 1000 个用户,2 个节点 - 2000 个用户)。
调整 DataGuard 以避免与集群相关的等待。调整不当的 DataGuard 设置会导致高 LOG FILE SYNC WAIT 和 GLOBAL CACHE LOG FLUSH TIME。参考:http://www.oracle.com/technetwork/database/features/availability/maa-wp-10gr2-dataguardnetworkbestpr-134557.pdf 和 http://www.oracle.com/technetwork/database/features/availability/maa- wp-10gr2-recoverybestpractices-131010.pdf
数据库网络注意事项
正确配置 Oracle Net Services 负载平衡以分配连接。负载平衡应与工作负载管理结合使用,以提供最高的可用性。应根据应用程序要求适当配置工作负载服务的 CLB_GOAL 属性。不同的工作负载可能需要不同的负载平衡目标。为具有不同 CLB_GOAL 的每个工作负载使用单独的服务。
对于 11.2 之前的侦听器,请确保 IPC 条目存在并且在所有 RAC 侦听器的 listener.ora 地址列表中首先列出。如果公共网络接口出现故障,则不这样做会对 VIP 进行故障转移所需的时间产生不利影响。有关详细信息,请参阅文档 403743.1。
对于 11.2 之前的实现,建议从 ASM 主目录运行侦听器(假设 ASM 从专用 ORACLE_HOME 运行)。这允许使用侦听器在节点上注册多个数据库,而无需绑定到特定的数据库主页。
对于 11gR2 及更高版本,默认情况下,侦听器将从 Grid Infrastructure 主目录运行。最佳做法是不要修改此配置。
对于 11gR2 及更高版本的环境,不应为 Grid Infrastructure 环境设置 TNS_ADMIN 环境变量,因为它会妨碍 oraagent 维护侦听器配置文件的能力。TNS_ADMIN 还会影响集群件启动、停止和监视侦听器的能力。
强烈建议将 SCAN 用于 11.2 及更高版本的数据库(用于 11.2 客户端连接),因为它简化了客户端连接并消除了在集群增长和/或缩小时修改数据库连接字符串的需要。SCAN 也可以按照文档 1058646.1与 11.2 之前的客户端集成。有关 SCAN 的更多信息,请参见文档 887522.1。
侦听器应实现远程侦听器交叉注册,以支持工作负载重定向和负载平衡,从而允许跨 RAC 集群分发服务连接请求。使用此配置,每个侦听器都知道哪个实例处理特定服务以及给定数据库实例上当前有多少负载。这使客户端能够在侦听器之间对连接请求进行负载平衡,并在服务级别管理工作负载。请参阅文档 728787.1 - 如何在 RAC 中设置交叉注册。
对于 11gR2 之前的版本,LOCAL_LISTENER 参数应该指向运行特定数据库实例的系统本地侦听器的 VIP。对于 11gR2 及更高版本,LOCAL_LISTENER 参数应设置为其默认值,这允许 oraagent 根据存储在 OCR 中的侦听器配置正确设置参数。
一般来说,每个 RAC 节点(不包括 SCAN)只需要 1 个侦听器来处理给定集群上运行的所有数据库的连接。如果在每个集群节点上需要或要求多个侦听器,那么将这些额外的侦听器注册到集群件以确保附加侦听器的 HA 和正确管理非常重要。
建议创建一个数据库服务来处理应用程序连接,出于管理目的而离开默认数据库服务。除了使管理员能够轻松控制应用程序能够连接到哪些实例的能力之外,这将为管理员提供实现服务器端 TAF、FAN、FCF 和运行时连接负载平衡等功能的灵活性。有关服务的更多信息,请参阅 Oracle Real Application Clusters 安装指南。
利用面向连接的可用性功能,例如透明应用程序故障转移 (TAF)、快速应用程序通知 (FAN)、快速连接故障转移 (FCF)、运行时连接负载平衡 (RCLB)。有关更多详细信息,请参阅使用 Oracle Real Application Clusters进行自动工作负载管理白皮书。
使用安全传输类 (COST) 来限制实例注册,从而防止向数据库侦听器进行未经授权的注册。这将确保您遵守 Oracle 安全警报 CVE-2012-1675 中发布的问题。可以在文档 1340831.1 中找到实现 COST 侦听器注册的说明。
一般数据库注意事项
在 10gR2 及以上版本中,LMS 进程旨在运行在实时调度类中。在某些情况下,由于存储在 $ORACLE_HOME/bin 目录中的 oradism 可执行文件的所有权或权限不正确,我们已经看到这种情况被阻止。有关这方面的更多详细信息,请参阅文档 602419.1。
应限制在给定集群节点上运行的数据库实例数量,以便节点上的实时 LMS 进程总数不超过推荐的 #CPU(核心)数 - 1。所有这些实时进程造成给定集群节点过载的可能性,从而导致性能不佳和实例/节点驱逐。除此之外,在没有 Oracle 支持指导的情况下,对于给定数据库的 LMS 进程数(gcs_server_processes 参数)的修改不应修改为偏离默认值。有关详细信息,请参阅文档 558185.1。
对于 11gR2 之前的版本(默认情况下禁用 NUMA),除非明确要求和测试,否则请确保关闭 NUMA(非统一内存架构)功能,因为已经报告了启用 NUMA 的问题。有关更多详细信息,请参阅文档 759565.1。
阅读并遵循 XA 和 RAC 的最佳实践指南,以避免在跨 RAC 实例拆分 XA 事务时出现问题。参考:http : //www.oracle.com/technetwork/database/enterprise-edition/bestpracticesforxaandrac-128676.pdf和http://www.oracle.com/technetwork/database/clustering/overview/distributed-transactions-and- xa-163941.pdf
使用来自运行数据库的 RDBMS Home 中的 SRVCTL 来注册和管理数据库资源。资源注册必须由拥有 RDBMS 软件的 OS 用户完成。
诊断和故障排除
一般注意事项
利用 TFA 简化诊断数据收集。跟踪文件分析器收集器 (TFA) 是一种诊断收集实用程序,用于简化 Oracle Clusterware/Grid Infrastructure、RAC 和单实例数据库系统上的诊断数据收集。TFA 类似于与 Oracle Clusterware 一起打包的 diagcollection 实用程序,因为它收集和打包诊断数据,但 TFA 比 diagcollection 强大得多,因为它能够集中和自动化收集诊断信息。TFA 随 11.2.0.4 和 12.1.0.2 Grid Infrastructure 一起提供,也可通过文档 1513912.1单独使用。TFA 具有以下主要优势:
通过减少诊断收集的时间和精力来提高生产力
通过从单个节点执行的单个命令执行诊断收集
收集的诊断信息包括 Grid Infrastructure/Oracle Clusterware、ASM、RAC 和 OS 的日志和跟踪文件
输出被合并到一个节点以便于上传
在大多数情况下, 将要支持的诊断数据上传减少10 倍或更多
诊断文件被隔离并修剪为仅包含事件时间的数据
减少 SR 解决时间
对事件进行适当的诊断收集可确保完整的诊断数据收集,从而最大限度地减少对请求额外数据的支持需求

查看文档 166650.1与全球客户支持有效合作。这将为您作为 Oracle Support 客户提供理解的支持流程、程序和资源。
主动安装和运行 OSWATCHER (OSW) 以实现 OS 资源利用率诊断。OSW 是一组 UNIX shell 脚本,旨在收集和存档操作系统和网络指标,以帮助诊断性能问题,旨在连续运行并将指标写入保存到存档目录的 ASCII 文件。保存的归档数据量和收集频率基于启动 OSW 时设置的用户参数。强烈建议始终在所有集群节点上安装并连续运行 OSW。文件 301137.1. 确保为每个节点使用单独的目录来存储 OSW 输出。在 RAC 环境中使用 OSWatcher 时,每个节点都必须将其输出文件写入单独的存档目录。不支持将输出文件合并到一个存档(在共享存储上)下,这会导致 OSWg 工具崩溃。共享存储很好,但每个节点都需要一个单独的存档目录。
在 Windows、Solaris 和 Linux 平台上,Cluster Health Monitor (CHM) 可用于跟踪 OS 资源消耗以及在集群范围内收集和分析数据。CHM 随 Grid Infrastructure 11.2.0.3 及更高版本自动安装,适用于除 HPUX 之外的所有平台。 可以为 Linux独立下载 CHM(如果未运行 11.2.0.2 GI)。如果您在 Solaris 或 Linux 上运行 11.2.0.2 GI 或在所有其他平台上运行 11.2.0.3,则不得安装独立下载的 CHM。有关 CHM 的更多信息,请参阅文档 1328466.1。
安装/利用支持工具包中的工具(TFA、ORAchk、OSWatcher、Procwatcher、SQLT、ORATOP、RDA)以减少反应性问题的数量并在处理反应性类型的问题时有效地改进。RAC 和 DB 支持工具包在文档 1594347.1 中可用。

如果需要,使用集群卸载工具删除 CRS 安装。clusterdeconfig 工具删除和取消配置与 Oracle Clusterware 或 Oracle RAC 数据库安装关联的所有软件和共享文件。clusterdeconfig 工具从集群中的所有节点中删除软件和共享文件。卸载工具记录在每个目标版本的在线文档中。
集群件和网格基础设施诊断
在向 Oracle Support 提交与 Clusterware/Grid Infrastructure 问题相关的 SR 时,建议上传 diagcollection 实用程序的输出,如文档 330358.1 中所述。如果这是与驱逐相关的问题,还应上传 OSWatcher 或 CHM 数据(有关 OSWatcher 和/或 CHM 信息,请参见上文)。在创建 SR 时提供此数据可以减少 SR 的周转时间。有关网格基础设施和集群件问题诊断收集的其他信息,请访问:
用于排除 CRS 问题的数据收集文档 289690.1
在对 RAC 相关数据库问题进行故障排除时,以下注意事项通常很有价值:
RAC:常见问题解答文档220970.1
11gR2的集群和网格首页-你需要知道什么文件1053147.1
疑难解答11.2集群节点驱逐(引导)文档1050693.1
故障排除10g和11.1集群重新引导文件265769.1
数据收集用于故障诊断CRS问题文件289690.1

注:其他信息可以在 Real Application Clusters (RAC) Oracle Clusterware 和 Oracle Grid Infrastructure文档 1096952.1 的主要说明中找到。
RAC 数据库诊断
在向 Oracle 支持部门提交与 RAC 数据库问题相关的 SR 时,请务必查看文档 289690.1,以确保在创建 SR 时收集和提供正确的诊断信息。预先提供此信息可以减少 SR 的周转时间。
在对 RAC 相关数据库问题进行故障排除时,以下注意事项通常很有价值:
RAC:常见问题解答文档 220970.1
GC 丢失块诊断文档 563566.1
RAC 环境中的 ORA-29740 错误故障排除文档 219361.1
11g 如何将包解压缩到 ADR文档 745960.1
11g 将关键错误信息发送到文档 25快速步骤143
用于排除 RAC 问题故障的数据收集文档 289690.1

注意: 可以在 Real Application Clusters (RAC) Oracle Clusterware 和 Oracle Grid Infrastructure文档 1096952.1的主要说明中找到更多信息。
修补诊断 (OPatch)
在对 OPatch 相关问题进行故障排除时,以下注意事项通常很有价值:
Oracle 集群件(网格基础架构或 CRS)和 RAC 环境文档 1339140.1 中的主要 OPATCH/PATCH 问题/问题

注意:有关 OPatch 的其他信息可以在 OPatch文档 293369.1的主要说明中找到


「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论