DBAtlas · 数据库运维图谱

安装 Oracle RAC 19c(Grid Infrastructure + ASM + RAC 数据库)

Oracle难度: 高级耗时: 4–6 小时

在两个或更多 node 上从零安装 Oracle Grid Infrastructure 19c(Flex ASM、SCAN)和 Oracle RAC 19c 数据库:网络与 DNS 规划、共享磁盘准备(udev 或 ASMLib;多路径或单路径)、用户与 SSH、cluvfy、在安装时应用 RU 的静默 gridSetup/runInstaller、用 dbca 创建 RAC CDB、应用服务及 failover 测试。最终得到每个 node 上都有一个打开的实例的 RAC 数据库,以及通过 SCAN 连接的服务。单服务器上的 Grid + ASM 请参阅 Oracle Restart 指南;已安装集群的日常运维(添加 node、OCR 备份、eviction)请参阅 RAC 运维指南。

架构: 2–8 个 node + 共享磁盘(SAN/iSCSI)+ DNS 中的 SCAN

开始之前

  • 所有 node 运行相同的受支持操作系统版本和相同的内核。…在 OL9/RHEL9 上,只有在安装时用 -applyRU / -applyOneOffs 对 19.3 安装介质应用当前 RU 和 Release Notes 中的 one-off 补丁,才能安装 19c(撰写本文时 Release Notes 建议 19.32 或更高版本;另请查看 RU README 中要求的最低 OPatch 版本)。…OL/RHEL 7.9:支持 19c Grid Infrastructure 和 RAC;基础 19.3 安装程序可以识别 OL7,RU 仍在安装时用 -applyRU 应用。最低内核:UEK4 4.1.12-124.19.2、UEK5 4.14.35-1818.1.6、UEK6 5.4.17-2011.4.4 或 RHCK 3.10.0-862.11.6。…在 OL8/RHEL8 上,19.3 基础安装程序无法识别该操作系统;需在安装时用 -applyRU 应用当前的 GI RU。…
  • 每个 node 至少 8 GB 内存(生产环境需要多得多),swap 按内存大小配置(4–16 GB 内存 → 与内存相同;超过 16 GB → 16 GB),/tmp 至少 1 GB,/u01 至少 100 GB 可用空间(Grid home 约 12 GB,DB home 约 10 GB,另需为 RU 和日志留出空间)。
  • 在第 1 个 node 的 … 下已准备好 LINUX.X64_193000_grid_home.zip、LINUX.X64_193000_db_home.zip(eDelivery / oracle.com)、p6880880_190000_Linux-x86-64.zip(最新 OPatch,MOS 补丁 6880880),以及已解压的 GI RU 目录 …。需要 My Oracle Support 账号和许可证。
  • 每个 node 有两个网络接口,且所有 node 上的接口名相同:public …(…),private …(…)。Private 网络专用于 interconnect,不路由,至少 1 Gbit(建议 10 Gbit);所有 node 上的 MTU 相同。
  • IP 规划已完成,且 VIP 地址空闲(尚未被任何服务器使用):…… public … / VIP …(…-vip)/ private …(…-priv)…;……。
  • 在 DNS 中,… 在 public 网络上以轮询方式解析为 3 个不同的 IP 地址(A 记录);存在反向(PTR)记录。SCAN 名称及其 IP 不写入 /etc/hosts(hosts 文件只读取一个 IP,SCAN 负载分配无法生效)。建议同时在 DNS 中定义 node 名称和 VIP;本指南还会将它们写入 /etc/hosts。
  • 所有 node 都由 chrony 从同一 NTP 源进行时间同步;时钟偏差小于 1 秒。(chrony 运行时,Oracle 的 CTSS 服务保持观察者(observer)模式。)
  • 共享磁盘(SAN/iSCSI/FC)在所有 node 上可见,大小相同,上面没有文件系统、LVM 或旧的 ASM 磁盘头。CRS 磁盘组需要…至少 3 块磁盘(每块至少 10 GB)…至少 1 块磁盘(建议 10 GB 及以上)…;DATA 和 FRA 按数据量规划。…每个 LUN 在所有 node 上至少有 2 条路径;本指南在所有 node 上写入相同的 multipath 别名,udev 规则按 ENV{DM_NAME} 匹配。…磁盘为单路径;udev 规则按 ENV{ID_SERIAL} 匹配(多路径 SAN 请选择“multipath:是”)。… 查找和比对 WWID:存储准备。
  • 各 node 可以访问操作系统软件仓库(…Oracle Linux:ol7_latest;RHEL 7:订阅(Server + Optional,ELS)…Oracle Linux:ol…_baseos_latest / ol…_appstream… / ol…_addons…;RHEL:订阅…)或内部镜像。
  • 用于 ASMLib v3 的 oracleasmlib-3.x.el….x86_64.rpm(oracle.com → Oracle Linux ASMLib 下载页面)已放在每个 node 的 … 下。
  • 拥有所有 node 的 root 权限;维护窗口、服务器/SAN 快照和回退方案已准备好。已与安全团队确定防火墙(interconnect 必须完全放开)和 SELinux 方案。

指南阶段

  • 操作系统准备(所有 node) — 设置主机名(…) · 更新系统并安装基础工具 · 安装 Oracle preinstall RPM · 创建 ASM 组和 grid 用户 · 为 grid 和 oracle 用户设置密码 · 设置 grid 用户的资源限制 …
  • 准备共享磁盘 — 安装并启用 DM-Multipath · 编写 /etc/multipath.conf · 加载 multipath 并验证路径(…) · 编写 udev 规则 · 应用并验证 udev 规则 · 安装 ASMLib 软件 …
  • 软件、SSH 等效性和安装前检查 — 设置安装文件的属主 · 将 Grid 软件解压到 Grid home · 在 Grid home 中更新 OPatch · 安装 cvuqdisk RPM(第 1 个 node) · 为 grid 用户配置 SSH 等效性 · 将 cvuqdisk RPM 复制到其他 node …
  • 安装 Grid Infrastructure — 编写 Grid 响应文件 · 安装 Grid Infrastructure(gridSetup,带 RU) · 运行 orainstRoot.sh(…) · 运行 root.sh — …(第 … 个) · 运行配置工具 · 验证集群状态 …
  • 创建 ASM 磁盘组(DATA、FRA) — 创建 DATA 和 FRA 磁盘组 · 在所有 node 上挂载磁盘组
  • Oracle RAC 数据库软件 — 将数据库软件解压到 DB home · 在 DB home 中更新 OPatch · 编写 DB 响应文件 · 安装数据库软件(runInstaller,带 RU) · 运行 DB home 的 root.sh(…)
  • 创建 RAC 数据库 — 创建 RAC 数据库(dbca) · 分配 HugePages(…) · 应用内存设置 · 重启数据库并检查 HugePages 使用情况 · 验证数据库配置 · 从 SQL 检查实例 …
  • 服务定义和 failover 测试 — 创建应用服务 · 添加客户端连接定义 · 测试通过 SCAN 的连接 · Failover 测试:实例崩溃 · 将服务迁回 preferred 实例 · Failover 测试:node 丢失(在最后一个 node 上停止 CRS) …
  • 安装后工作 — 运行安装后 cluvfy 检查 · 手动备份 OCR · 配置 RMAN 基本设置 · 安装监控和诊断工具 · 清理安装文件
按您的环境打开分步计划 →