专业编程教程与实战项目分享平台

网站首页 > 技术文章 正文

Oracle 19C RAC设置实例自启动 oracle rac开机自启动

ins518 2024-11-02 12:44:26 技术文章 9 ℃ 0 评论

默认情况下,Oracle 19C CRS服务是随着系统启动而自动启动的。

查看CRS的版本:

# /u01/app/19.3.0.0/grid/bin/crsctl query crs softwareversion

查看CRS是否自启动:

cat /etc/oracle/scls_scr/racnode1/root/ohasdstr

如果结果是enable代表自启动。

设置CRS自启动:

/u01/app/19.3.0.0/grid/bin/crsctl enable crs


默认情况下,Oracle 19C RAC中实例的AUTO_START值为restore。其中restore表示还原、恢复的含义,是把实例状态恢复到CRS停止前的状态。

1.如果CRS停止前,手动通过sqlplus 或者是 srvctl 停止了实例,那么在crs重启后,实例不会跟着自动启动。

2.如果CRS停止前,实例处于open状态,那么重启CRS(或者操作系统重启后),实例会跟着CRS启动而自动启动。

3.如果在没有停止实例前,直接停止CRS,实例是以abort方式停止的[Shutting down instance(abort)]。

把AUTO_START由restore改成always后,无论crs停止前实例是open还是close状态,实例都会跟着CRS启动而启动。

# /u01/app/19.3.0.0/grid/bin/crsctl stat res ora.racdb.db -p|grep AUTO_START

AUTO_START=restore

如果AUTO_START值是默认的restore,那么Oracle 19C RAC需要使用oracle用户手动启动oracle实例:

# su - oracle

$/u01/app/oracle/product/19.3.0.0/dbhome_1/bin/srvctl start database -d racdb

这样,执行:

# /u01/app/19.3.0.0/grid/bin/crsctl stat res ora.racdb.db -t

或者执行:

$/u01/app/oracle/product/19.3.0.0/dbhome_1/bin/srvctl status instance -d racdb -i racdb1,racdb2 -f -v实例才会显示是ONLINE状态的。


设置Oracle 19C RAC实例自启动的方法是修改AUTO_START=always。

# /u01/app/19.3.0.0/grid/bin/crsctl modify resource "ora.racdb.db" -attr "AUTO_START=always" -unsupported

这里有个技巧是自从12.1.0.2之后,如果使用crsctl 进行ora resource的修改、启动、关闭,都会遭遇CRS-4995The command 'Modify resource' is invalid in crsctl. Use srvctl for this command.的错误。

解决方法是加上-unsupported的参数。


修改完成后查看自启动参数:

# /u01/app/19.3.0.0/grid/bin/crsctl stat res ora.racdb.db -p|grep AUTO_START

$/u01/app/oracle/product/19.3.0.0/dbhome_1/bin/srvctl status instance -d racdb -i racdb1,racdb2 -f -v

$/u01/app/oracle/product/19.3.0.0/dbhome_1/bin/srvctl status database -d racdb 才会显示是ONLINE状态的。

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表