Oracle RAC集群部署实战:双节点配置与共享存储设置
在现代企业数据架构中,高可用性与负载均衡是保障核心业务连续性的基石。Oracle Real Application Clusters(RAC)作为Oracle数据库的集群解决方案,允许多个节点共享同一数据库实例,实现无缝故障切换与横向扩展。对于构建数据中台、支撑数字孪生系统或实现高并发数字可视化平台的企业而言,部署一套稳定可靠的Oracle RAC集群,是提升系统韧性与性能的关键一步。
本文将聚焦于双节点Oracle RAC部署的实战配置流程,涵盖操作系统准备、共享存储配置、网络规划、集群软件安装与数据库创建全过程,确保部署过程可复现、可验证、可运维。
Oracle RAC对底层基础设施有明确要求。双节点部署建议采用以下配置:
✅ 关键提示:所有节点必须使用相同的操作系统版本、内核参数与补丁级别,避免因环境差异导致集群启动失败。
操作系统安装完成后,需关闭防火墙与SELinux,避免干扰集群通信:
systemctl stop firewalld && systemctl disable firewalldsetenforce 0sed -i 's/SELINUX=enforcing/SELINUX=permissive/g' /etc/selinux/configOracle RAC的核心优势在于多节点共享同一数据库文件,这依赖于共享存储系统。推荐使用以下三种方案之一:
在Linux系统中,使用device-mapper-multipath工具识别并聚合多路径存储:
yum install -y device-mapper-multipathsystemctl enable multipathd --nowmultipath -ll编辑 /etc/multipath.conf,添加厂商配置(以华为存储为例):
defaults { user_friendly_names yes}devices { device { vendor "HUAWEI" product "OceanStor" path_grouping_policy multibus path_selector "round-robin 0" hardware_handler "0" failback immediate }}重启服务并验证:
systemctl restart multipathdmultipath -ll输出应显示多个路径绑定为一个逻辑设备,如 mpatha。
使用oracleasm工具格式化共享磁盘为ASM磁盘:
oracleasm createdisk DATA1 /dev/mapper/mpatha1oracleasm createdisk FRA1 /dev/mapper/mpathb1oracleasm listdisks确保两节点均能识别这些磁盘:
# 在节点2执行oracleasm scandisksoracleasm listdisks🔍 为什么必须用ASM?ASM不仅提供文件管理,还自动实现条带化(striping)与镜像(mirroring),避免单点故障。相比传统文件系统,它能感知节点状态,动态重平衡I/O负载,是RAC稳定运行的底层保障。
Oracle RAC依赖两类网络:
| 类型 | 用途 | 推荐配置 |
|---|---|---|
| Public Network | 客户端连接、应用访问 | 192.168.10.0/24,静态IP |
| Private Network | 节点间心跳、缓存融合(Cache Fusion) | 10.10.10.0/24,独立网段,无路由 |
⚠️ 私网必须使用专用交换机或VLAN隔离,禁止与公网混用。延迟超过10ms将触发节点驱逐(eviction)。
配置网络接口:
# 节点1nmcli con modify eth1 ipv4.addresses 192.168.10.10/24nmcli con modify eth2 ipv4.addresses 10.10.10.1/24# 节点2nmcli con modify eth1 ipv4.addresses 192.168.10.11/24nmcli con modify eth2 ipv4.addresses 10.10.10.2/24配置DNS或/etc/hosts解析:
192.168.10.10 racnode1.example.com racnode1192.168.10.11 racnode2.example.com racnode210.10.10.1 racnode1-priv.example.com racnode1-priv10.10.10.2 racnode2-priv.example.com racnode2-priv192.168.10.12 racnode-vip.example.com racnode-vip192.168.10.13 rac-scan.example.com rac-scan💡 SCAN(Single Client Access Name) 是Oracle 11gR2引入的特性,客户端只需连接SCAN IP,由DNS或GNS自动负载分发至任意节点,极大简化连接管理。
创建统一的Oracle用户与组:
groupadd -g 501 oinstallgroupadd -g 502 dbagroupadd -g 503 operuseradd -u 501 -g oinstall -G dba,oper oracleecho "oracle:password" | chpasswdmkdir -p /u01/app/oraclechown -R oracle:oinstall /u01/app/oraclechmod -R 775 /u01/app/oracle配置内核参数(/etc/sysctl.conf):
fs.aio-max-nr = 1048576fs.file-max = 6815744kernel.shmall = 2097152kernel.shmmax = 536870912000kernel.shmmni = 4096kernel.sem = 250 32000 100 128net.ipv4.ip_local_port_range = 9000 65500net.core.rmem_default = 262144net.core.rmem_max = 4194304net.core.wmem_default = 262144net.core.wmem_max = 1048576应用配置:
sysctl -p配置用户资源限制(/etc/security/limits.conf):
oracle soft nofile 1024oracle hard nofile 65536oracle soft nproc 16384oracle hard nproc 16384oracle soft stack 10240oracle hard stack 32768安装依赖包:
yum install -y binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libgcc libstdc++ libstdc++-devel libaio libaio-devel make sysstat libxcb libX11 libXau libXi libXtst libXrender libXext下载Oracle 19c或21c GI安装包,解压至/u01/app/19.0.0/grid。
以oracle用户运行安装程序:
cd /u01/app/19.0.0/grid./runInstaller安装向导步骤:
DATA1与FRA1磁盘,设置ASM密码✅ 安装完成后,验证集群状态:
crsctl check clustercrsctl stat res -t输出应显示所有资源为ONLINE,包括ora.cssd、ora.diskgroup、ora.gipcd等。
使用DBCA(Database Configuration Assistant)创建RAC数据库:
cd /u01/app/oracle/product/19.0.0/dbhome_1/bin./dbca配置步骤:
racdb.example.com)+DATA,归档日志在+FRAsga_target、pga_aggregate_target📌 创建完成后,使用
srvctl管理服务:
srvctl status database -d racdbsrvctl start database -d racdbsrvctl stop database -d racdb在任意节点执行:
SELECT instance_name, host_name FROM gv$instance;输出应显示两个实例名与对应主机名,证明双节点同时运行。
手动关闭节点1的Oracle服务:
srvctl stop instance -d racdb -i racdb1在节点2上查询业务连接是否持续可用,验证应用无感知切换。
awrreport分析跨节点SQL执行效率gv$session中的inst_id分布oem或Grid Control查看Cache Fusion等待事件ocrconfig -export /backup/ocr.bakcrsctl与srvctlping -c 100测试私网延迟,确保<5msOracle RAC集群部署不仅是技术操作,更是企业数字化转型的基础设施加固。无论是支撑实时数字孪生模型的动态仿真,还是为可视化平台提供毫秒级响应的分析引擎,RAC的高可用架构都为业务连续性提供了坚实保障。
在部署过程中,任何环节的疏忽——如私网未隔离、ASM未正确识别、内核参数缺失——都可能导致集群崩溃。因此,建议在生产环境部署前,先在测试环境完整演练一次。
如需快速获取标准化部署脚本、自动化配置模板或专家支持,可申请专业部署服务:申请试用&https://www.dtstack.com/?src=bbs
为确保长期稳定运行,建议每季度进行一次集群健康检查,并结合监控系统(如Prometheus + Grafana)实现自动化告警。再次推荐:申请试用&https://www.dtstack.com/?src=bbs
若您正在规划下一代数据平台架构,Oracle RAC的成熟性与Oracle生态的完整性,是值得优先考虑的方案。立即行动,开启您的高可用数据库之旅:申请试用&https://www.dtstack.com/?src=bbs
申请试用&下载资料