Oracle【高可用篇】03:Oracle RAC集群常见运维命令【详细】

一、环境准备

1、环境信息

192.168.184.161 rac01
192.168.184.162 rac02

在这里插入图片描述

2、集群网络规划

interfacep19c01p19c02
public ip192.168.184.161192.168.184.162
private ip1.1.1.11.1.1.2
vip192.168.184.171192.168.184.172
scan192.168.184.181

3、查看集群状态

su - grid
crsctl stat res -t

在这里插入图片描述

4、进行连接

注意:

实例名称为p19c0
ip为192.168.184.181

在这里插入图片描述

SELECT instance_name FROM v$instance;
SELECT value FROM v$parameter WHERE name='service_names';
SELECT name FROM v$database;

在这里插入图片描述

二、常用命令

1、crsctl

crsctl全称是Cluster Ready Services Control,是Oracle Clusterware的核心管理工具,用于控制集群服务、资源状态及配置。
crsctl 管理集群底层服务(如CSS、CRS、EVM等),属于集群层控制。

(1)查看集群中所有资源状态

su - grid
crsctl status res -t 

在这里插入图片描述

(2)守护进程状态

su - grid
crsctl status res -t -init 

在这里插入图片描述

(3)启动/关闭 集群服务

需要使用root用户才能执行,且这里的停止只是停止当前节点的服务,另外节点上如果要停止的话,也要进行操作。

su - root

停止

cd /u01/app/19.3.0/grid/bin
./crsctl stop crs

在这里插入图片描述
在这里插入图片描述

查看集群状态

./crsctl status res -t 

在这里插入图片描述

启动

cd /u01/app/19.3.0/grid/bin
./crsctl start crs

查看集群状态

需要等一会,大概几分钟,集群才能启动成功,查看集群状态:

./crsctl status res -t 

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(4)独占模式启动集群

是一种高级恢复模式,适用于集群关键组件(如OCR、表决盘)故障时的修复场景。通过隔离节点并限制服务启动范围,管理员可以安全地执行底层维护操作,避免影响整个集群的稳定性。

先使用root用户关闭集群

两个节点都进行停止。

cd /u01/app/19.3.0/grid/bin
./crsctl stop crs

在这里插入图片描述
在这里插入图片描述

再使用root用户进行启动独占模式,这里启动独占模式,是在一个节点上进行,这里我在rac01节点进行启动独占模式。

cd /u01/app/19.3.0/grid/bin
./crsctl start crs -excl -nocrs

在这里插入图片描述
这里,一定要注意,如果你是两个节点的rac集群,一定要2个节点都先停掉集群,然后再启动独占模式,否则会出现下面的错误:
在这里插入图片描述
注意,使用独占模式启动后,在修复完问题后,需要强制关闭集群,再重启集群,否则会出现不一致的问题!!

强制关闭

cd /u01/app/19.3.0/grid/bin
./crsctl stop crs -f

在这里插入图片描述

重新启动
这里2个节点要一起正常启动。

cd /u01/app/19.3.0/grid/bin
./crsctl start crs

在这里插入图片描述
查看集群状态

cd /u01/app/19.3.0/grid/bin
./crsctl status res -t 

启动优点慢,稍等几分钟。
在这里插入图片描述
如下,就启动好了
在这里插入图片描述

(5)检查集群服务状态:

su - grid
crsctl check crs 

在这里插入图片描述

(6)集群自启动

在设置之前,先检查是否设置了自启动,注意,节点名称不一样。

cat /etc/oracle/scls_scr/p19c01//root/ohasdstr
cat /etc/oracle/scls_scr/p19c02//root/ohasdstr

内容是enable说明设置了自启动。
在这里插入图片描述
禁止自启动

crsctl enable disable crs

设置自启动

crsctl disable crs

(7)查看集群有哪些资源

crsctl status res -t
crsctl stat res -t

在这里插入图片描述

crsctl stat res -t -init

在这里插入图片描述

(8)查看资源属性

crsctl status res res_name -f
crsctl status res ora.LISTENER.lsnr -f

在这里插入图片描述

2、srvctl

srvctl全称是Server Control,是一个核心的命令行工具,主要用于管理集群资源和服务。
srvctl 管理集群资源(如数据库、监听器、服务等),属于应用层控制

(1)查询所有实例的状态

注意集群实例名称

srvctl status database -d racdb
srvctl status database -d p19c0

在这里插入图片描述

(2)查看单节点实例状态

注意集群实例名称

srvctl status instance -d racdb -i racdb1
srvctl status instance -d p19c0 -i p19c01
srvctl status instance -d p19c0 -i p19c02

在这里插入图片描述

(3)关闭所有节点的实例

注意集群实例名称,一个节点操作就行

srvctl stop database -d racdb
srvctl stop database -d p19c0

在这里插入图片描述
查看实例状态

srvctl status database -d p19c0

在这里插入图片描述

(4)启动所有节点实例

注意集群实例名称,一个节点操作就行

srvctl start database -d racdb
srvctl start database -d p19c0 

在这里插入图片描述
查看实例状态

srvctl status database -d p19c0

在这里插入图片描述

(5)关闭单节点的实例

注意集群实例名称,一个节点操作即可

srvctl stop instance -d racdb -i racdb2
srvctl stop instance -d p19c0 -i p19c02

在这里插入图片描述
查看实例状态

srvctl status database -d p19c0

在这里插入图片描述

(6)启动单节点的实例

注意集群实例名称,一个节点操作即可

srvctl start instance -d racdb -i racdb2
srvctl start instance -d p19c0 -i p19c02

在这里插入图片描述
查看实例状态

srvctl status database -d p19c0

在这里插入图片描述

(7)查看数据库配置

注意集群实例名称

srvctl config database -d racdb
srvctl config database -d p19c0

在这里插入图片描述

(8)查询配置了Oracle Grid Infrastructure 网络资源的详细信息

显示配置了 Oracle Grid Infrastructure 网络资源的详细信息,例如子网、节点名称、IP 地址等。

srvctl config network

在这里插入图片描述

(9)查询配置了虚拟 IP(VIP)资源的详细信息

显示配置了虚拟 IP(VIP)资源的详细信息,包括 VIP 名称、所在节点和 VIP 地址等。

srvctl config vip -node p19c01
srvctl config vip -node p19c02
srvctl config vip -n p19c01
srvctl config vip -n p19c02

在这里插入图片描述

(10)查询当前运行状态下的虚拟 IP(VIP)资源的详细信息

显示当前运行状态下的虚拟 IP(VIP)资源的详细信息,例如节点名称、VIP 地址和状态。

srvctl status vip -node p19c01
srvctl status vip -node p19c02

在这里插入图片描述

(11)查询配置了 SCAN(Single Client Access Name)的详细信息

显示配置了 SCAN(Single Client Access Name)的详细信息,包括 SCAN 名称和地址列表。

srvctl config scan

在这里插入图片描述

(12)查询当前运行状态下的 SCAN(Single Client Access Name)资源的详细信息

显示当前运行状态下的 SCAN(Single Client Access Name)资源的详细信息,例如名称、地址和状态。

srvctl status scan

在这里插入图片描述

(13)查询配置了监听器的详细信息

显示配置了监听器的详细信息,包括监听器名称、所在节点和监听端口。

srvctl config listener

在这里插入图片描述

(14)显示当前运行状态下的监听器的详细信息

显示当前运行状态下的监听器的详细信息,例如名称、监听地址和状态。

srvctl status listener

在这里插入图片描述

(15)启动或停止指定的监听器

srvctl stop listener
srvctl status listener

在这里插入图片描述

srvctl start listener
srvctl status listener

在这里插入图片描述

(16)显示配置了 SCAN 监听器的详细信息

显示配置了 SCAN 监听器的详细信息,包括监听器名称、所在节点和监听端口。

srvctl config scan_listener

在这里插入图片描述

(17)显示当前运行状态下的 SCAN 监听器的详细信息

显示当前运行状态下的 SCAN 监听器的详细信息,例如名称、监听地址和状态。

srvctl status scan_listener

在这里插入图片描述

(18)显示配置了 Automatic Storage Management (ASM) 的详细信息

显示配置了 Automatic Storage Management (ASM) 的详细信息,包括 ASM 实例名称、监听器名称和磁盘组名称等。

srvctl config asm

在这里插入图片描述

(19)显示当前运行状态下的 ASM 实例的详细信息

显示当前运行状态下的 ASM 实例的详细信息,例如实例名称、ASM 状态和监听器状态。

srvctl status asm

在这里插入图片描述

(20)显示指定磁盘组(这里是 data)的详细信息

显示指定磁盘组(这里是 data)的详细信息,包括磁盘组名称、状态和成员磁盘列表。

srvctl status diskgroup -g data
srvctl status diskgroup -g ocr

在这里插入图片描述

(21)移除指定的数据库(这里是 orcl)

移除指定的数据库(这里是 orcl),将删除与数据库相关的资源配置。

srvctl remove database -d orcl

(22)查看集群VIP

srvctl config nodeapps -a  

在这里插入图片描述

(22)查看集群网卡

oifcfg getif    

在这里插入图片描述

(23)删除集群网卡

oifcfg delif    

(24) 重新配置集群网卡

oifcfg setif

3、asm

ASM(Automatic Storage Management,自动存储管理) 是一个核心组件。

存储管理:
ASM提供平台无关的文件系统、逻辑卷管理及软RAID服务,支持条带化(Striping)和磁盘镜像(Mirroring),实现动态扩展磁盘和I/O负载均衡。
高可用性:
ASM以独立实例运行,管理磁盘组(Disk Group),确保数据库文件在集群节点间共享存储,支持故障切换和负载均衡。

(1)创建磁盘组

create diskgroup FLASH_DISK external redundancy disk '/dev/oracleasm/disks/ASMDISK1' ;

(2)查看磁盘组状态

select name,state from v$asm_diskgroup;

在这里插入图片描述

(3)磁盘组挂载与卸载

alter diskgroup FLASH_DISK mount/dismount;

(4)查看磁盘名与设备的关系

select name,path from v$asm_disk_stat;

在这里插入图片描述

(5)查看每个磁盘组可用大小

select name,allocation_unit_size,free_mb,total_mb from v$asm_diskgroup;

在这里插入图片描述

(6)向磁盘组中增加一个磁盘

ALTER DISKGROUP ARCH_DISK ADD DISK '/dev/oracleasm/disks/ASMDISK3' (name ARCHDISK2);

(7)从磁盘组中删除一个磁盘:

ALTER DISKGROUP ARCH_DISK DROP DISK ARCHDISK2;

(8)删除一个磁盘组

确保该磁盘被所有实例所卸载dismount

drop diskgroup FLASH_DISK;

(9)删除一个有内容的磁盘组:

drop diskgroup ocr2 including contents; 

(10)手动重新平衡磁盘组

ALTER DISKGROUP data2 REBALANCE
ALTER DISKGROUP data2 REBALANCE   power 5
如果不指定power,以初始化参数值ASM_POWER_LIMIT为默认值

对于ASM磁盘组兼容性设定为11.2.0.2或更高,值的操作范围是0到1024用于重新平衡能力。

对于ASM磁盘组兼容性设定为小于11.2.0.2,该值的操作范围是0到11。如果ASM_POWER_LIMIT大于11,则使用11。

(11)关闭ASM

需要与crs一起关闭

srvctl stop crs 

4、OCR

OCR(Oracle Cluster Registry) 是核心概念之一,其全称为 Oracle Cluster Registry,中文译为“Oracle集群注册表”。

存储集群配置信息:
OCR是Oracle Clusterware和RAC集群的中央配置存储库,记录以下关键信息:
集群节点列表、数据库实例和服务配置、监听器、VIP、网络资源等集群资源、集群服务依赖关系、集群资源组(Resource Group)的配置
高可用性保障:
OCR确保集群在节点故障时能快速识别并重新分配资源,避免脑裂(Split-Brain)问题

(1)检查OCR

ocrcheck

在这里插入图片描述

(2)添加OCR镜像盘

ocrconfig -add +data2

(3)删除OCR镜像盘

ocrconfig -delete +data2  

(4)触发OCR备份

需要使用root权限

cd /u01/app/19.3.0/grid/bin/
./ocrconfig -manualbackup   

在这里插入图片描述

(5)查看OCR备份

cd /u01/app/19.3.0/grid/bin/
./ocrconfig -showbackup    

在这里插入图片描述

(6)导出OCR

cd /u01/app/19.3.0/grid/bin/
./ocrconfig -export /root/back_ocr_20250515

在这里插入图片描述

vim /root/back_ocr_20250515

(7)导入OCR

ocrconfig -import file_name

5、OLR

OLR(Offline Local Registry) 是Oracle Clusterware的关键组件之一,其核心作用是本地存储集群配置信息,用于保障集群的高可用性和故障恢复能力。

本地备份OCR:
OLR是OCR(Oracle Cluster Registry)的本地副本,存储在每个节点的本地磁盘上,用于在OCR损坏或不可用时快速恢复集群配置12。
集群状态同步:
OLR记录集群节点的状态信息,辅助Clusterware管理集群成员和资源。
故障恢复:
当OCR损坏时,可通过OLR重建OCR内容,避免集群服务中断

/etc/oracle/ocr.loc
/etc/oracle/olr.loc

6、VF

VF(Voting File,表决磁盘文件) 是集群高可用架构的核心组件之一,主要用于维护集群节点间的协调与仲裁。

集群心跳机制:
通过“磁盘心跳”确认节点存活状态。
脑裂(Split-Brain)仲裁:
当节点间网络中断时,VF通过多数投票机制(需奇数个VF)决定哪些节点保留集群成员资格,避免数据冲突。
节点状态管理:
记录节点添加、删除等操作信息

(1)替换VF(常用于更换存储)

crsctl replace votedisk diskgroup_name

(2)集群层面查看VF信息

crsctl query css votedisk

在这里插入图片描述

(3)这两个视图中包含voting_file列

select voting_file from v$asm_disk;        

在这里插入图片描述

select * from v$asm_diskgroup;

在这里插入图片描述

(4)查看某个磁盘是否为VF

select name,path,voting_file from v$asm_disk;

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

做一个有趣的人Zz

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值