温馨提示×

Debian下Oracle集群搭建指南

小樊
73
2025-09-01 11:21:10
栏目: 云计算

Debian下Oracle集群(RAC)搭建指南

1. 环境准备

1.1 操作系统要求

  • 使用Debian 10/11(64位)操作系统,确保系统已安装gccmakelibaiolibaio1sysstat等基础依赖包(通过apt-get install命令安装)。
  • 配置系统内核参数(编辑/etc/sysctl.conf),添加以下关键参数以支持Oracle RAC:
    net.core.rmem_max = 4194304
    net.core.wmem_max = 4194304
    fs.file-max = 6815744
    kernel.sem = 250 32000 100 128
    kernel.shmmni = 4096
    kernel.shmall = 1073741824
    kernel.shmmax = 4398046511104  # 建议值为物理内存的一半(单位:字节)
    
    执行sysctl -p使参数生效。
  • 配置用户资源限制(编辑/etc/security/limits.conf),添加以下内容:
    oracle soft nproc 2047
    oracle hard nproc 16384
    oracle soft nofile 1024
    oracle hard nofile 65536
    

1.2 网络配置

  • 节点命名:为每个集群节点设置唯一主机名(如node1node2),并在/etc/hosts文件中添加节点IP与主机名的映射(避免依赖DNS):
    192.168.1.10 node1
    192.168.1.11 node2
    
  • 网络类型:配置三种网络类型:
    • 公有网络:用于客户端访问(如192.168.1.0/24);
    • 私有网络(Interconnect):用于节点间通信(如10.0.0.0/24,需高速、低延迟);
    • 虚拟IP(VIP):用于客户端连接的浮动IP(如192.168.1.100192.168.1.101,需与公有网络在同一网段)。
  • 防火墙设置:开放Oracle所需端口(默认:1521/TCP、8080/TCP、443/TCP、1158/TCP、私有网络端口如10.0.0.0/24UDP 42424)。

1.3 共享存储准备

  • Oracle RAC需要共享存储来存放数据文件、OCR(Oracle Cluster Registry)、投票磁盘(Voting Disk)。可选择以下方案:
    • ASM(Automatic Storage Management):Oracle推荐的存储管理方案,需在安装Grid Infrastructure时配置;
    • 第三方存储:如NAS(Network Attached Storage)、SAN(Storage Area Network),需确保所有节点均可访问。
  • 测试共享存储性能(如IOPS、延迟),确保满足Oracle RAC的高并发需求。

2. 安装Oracle Grid Infrastructure

Grid Infrastructure是Oracle RAC的核心组件,负责集群管理、资源调度(如VIP、ASM实例)。

2.1 下载软件

  • 从Oracle官网下载适用于Debian的Oracle Grid Infrastructure安装包(选择与Oracle Database版本匹配的版本)。

2.2 运行预检查

  • 使用cluvfy工具验证集群环境是否符合要求(如节点连通性、存储权限、网络配置):
    ./cluvfy stage -pre crsinst -n node1,node2 -fixup -verbose
    
    根据输出修复不符合项(如调整内核参数、修改用户权限)。

2.3 安装Grid Infrastructure

  • root用户执行runInstaller脚本,选择“集群安装”模式,指定集群节点、私有网络接口(如eth1)、SCAN名称(如cluster.example.com)、VIP地址等信息。
  • 安装完成后,使用crsctl命令验证Grid Infrastructure状态:
    crsctl check crs
    
    正常输出应显示“Cluster Ready Services is online”。

3. 安装Oracle Database软件

3.1 下载软件

  • 从Oracle官网下载适用于Debian的Oracle Database安装包(选择“企业版”并勾选“RAC”选项)。

3.2 运行安装程序

  • oracle用户执行runInstaller脚本,选择“RAC安装”模式,指定Grid Infrastructure的安装目录(如/u01/app/grid)、数据库名称(如orcl)、字符集(如AL32UTF8)、节点信息等。
  • 安装完成后,执行dbca(数据库配置助手)创建RAC数据库(可选,也可在安装后手动创建)。

4. 创建Oracle RAC数据库

4.1 使用DBCA创建数据库

  • 启动dbcadbca命令),选择“创建数据库”,勾选“RAC数据库”选项,输入数据库名称、SID、字符集等信息。
  • 配置数据库存储:选择ASM作为数据文件、重做日志、控制文件的存储路径(如+DATA+FRA)。
  • 配置数据库实例:指定每个节点的实例名称(如orcl1orcl2)、内存参数(如SGA_TARGET、PGA_AGGREGATE_TARGET)。
  • 完成创建后,dbca会自动生成数据库并启动所有实例。

4.2 手动创建数据库(可选)

  • 使用sqlplussysdba身份登录,执行CREATE DATABASE语句,配置数据文件路径为ASM磁盘组(如+DATA/orcl/system01.dbf)。
  • 创建SPFILE(服务器参数文件):
    CREATE SPFILE='+DATA' FROM PFILE='/tmp/initorcl.ora';
    
  • 启动数据库实例:
    STARTUP;
    

5. 验证集群功能

5.1 检查集群状态

  • 使用crsctl命令查看集群资源状态:
    crsctl stat res -t
    
    正常输出应显示所有资源(如数据库实例、监听器、VIP、ASM实例)均为“ONLINE”状态。
  • 使用srvctl命令验证服务状态:
    srvctl status database -d orcl
    
    应显示数据库“orcl”的所有实例均在运行。

5.2 测试故障转移

  • 停止某个节点的Oracle服务(如node1):
    systemctl stop oracle-rac
    
  • 检查VIP是否漂移到另一个节点(如node2):
    crsctl query css votedisk
    
  • 连接数据库,验证业务是否正常(如通过tnsping测试连接,执行SQL查询)。

6. 监控与维护

  • 日常监控:使用crsctlsrvctl命令定期检查集群状态;通过Oracle Enterprise Manager(OEM)监控性能指标(如CPU、内存、I/O)。
  • 备份策略:配置RMAN(Recovery Manager)备份,定期备份数据文件、归档日志、控制文件到共享存储或异地。
  • 补丁更新:定期应用Oracle官方发布的补丁(如PSU、CPU),修复安全漏洞和性能问题。
  • 日志分析:定期检查alert.logtrace文件,排查潜在问题(如ORA-错误)。

注意事项

  • Oracle RAC搭建过程复杂,建议参考Oracle官方文档(如《Oracle Database安装指南》《Oracle RAC配置手册》)进行调整;
  • 生产环境中需考虑高可用性扩展(如Data Guard、GoldenGate),进一步提升数据安全性;
  • 确保所有节点的系统时间同步(可使用NTP服务)。

0