一、环境准备
setenforce 0并修改/etc/selinux/config),关闭防火墙(systemctl stop firewalld)或放行集群通信端口(如1521、4200、42424)。node1、node2),编辑/etc/hosts文件,添加节点名称与IP的映射(如192.168.1.101 node1),确保节点间可通过主机名互相访问。yum install -y oracle-database-preinstall-19c kmod-oracleasm gcc make binutils glibc glibc-devel libaio libaio-devel sysstat unixODBC unixODBC-devel
确保依赖包版本符合Oracle官方文档要求,避免安装冲突。二、Oracle Grid Infrastructure安装
Oracle Grid Infrastructure安装包(如19c),解压到临时目录(如/tmp/grid)。root用户执行runInstaller脚本:cd /tmp/grid
./runInstaller
node1、node2)。raccluster)、私有网络接口(如eth1,用于节点间通信)、公共网络接口(如eth0,用于外部访问)、SCAN名称(如rac-scan)、SCAN IP(如192.168.1.200)。OCRDG,冗余级别为NORMAL)、VOTING磁盘组(如VOTINGDG,冗余级别为NORMAL)。root.sh脚本(在每个节点上执行),完成集群配置。三、Oracle RAC数据库创建
runInstaller,选择“RAC安装”选项,添加所有集群节点,指定数据库名称(如orcl)、字符集(如AL32UTF8)、内存参数(如SGA_TARGET=4G、PGA_AGGREGATE_TARGET=2G)。DBCA(Database Configuration Assistant)工具创建数据库:dbca
DATADG)。orcl1、orcl2),设置密码策略。四、集群验证与测试
crsctl命令查看集群整体状态:crsctl check cluster all
使用srvctl命令查看数据库实例状态:srvctl status database -d orcl
确保所有节点的实例均处于“OPEN”状态。crsctl stop crs),观察另一个节点是否自动接管VIP和数据库实例。192.168.1.200),执行SQL语句(如SELECT * FROM dual),确认连接未中断。五、集群管理与维护
crsctl命令监控集群资源状态:crsctl stat res -t
使用srvctl命令管理数据库实例(如启动/停止实例):srvctl start database -d orcl
srvctl stop database -d orcl
配置监控工具(如Zabbix、Nagios),实时监控集群的性能指标(如CPU利用率、内存占用、ASM磁盘空间)。AWR报告分析慢查询,添加索引、分区表,减少I/O开销。asmcmd lsdg),扩展磁盘组(asmcmd asmca)以应对数据增长。