需求:
对于oracle grid环境,无法是RAC还是单机+ASM,无论是主库还是ADG备库,grid都非常友好的自动启动数据库实例。
但对于单机环境,必须自己写脚本或依赖dbstart脚本。如果是单机的ADG备库,我们还有更多功能需求:
1、OS关闭前能自动关闭数据库和监听
2、OS启动后能自动启动数据库和监听。如果是主库能直接open,如果是ADG备库,能先mount,然后启动MRP应用一段时间(防止数据文件不平无法直接open),再open和启动实时同步。
实现方法:
1、要使这个脚本生效,必须修改/etc/oratab这个文件,最后一行N改为Y
[root@hisdb_dg ~]# vi /etc/oratab
csk11g:/home/oracle/app/11.2.0/db_1:Y <== 主库
test11g:/home/oracle/app/11.2.0/db_1:Y <== 主库
hisdbdg:/home/oracle/app/11.2.0/db_1:Y <== 将dg库放最后面,让前面普通库先启动
2、修改$ORACLE_HOME/bin/dbstart和dbshut脚本
将ORACLE_HOME_LISTNER=$1注释掉,在其后面加:
ORACLE_HOME_LISTNER=$ORACLE_HOME
从而保证脚本自动启动或关闭监听器LISTENER
3、 修改$ORACLE_HOME/bin/dbstart脚本,添加dataguard的判断
主库则直接启动,备库能先mount,然后同步数据。同步一段时间(600s)后再open,再实时同步。
原来:
*) $SQLDBA <<EOF
connect / as sysdba
startup
quit
EOF
Oracle单机与ADG备库自动启停配置

本文介绍了在Oracle单机环境中,如何实现数据库和监听的自动启停,特别是对于作为ADG备库的情况。需求包括在操作系统关闭前自动关闭数据库和监听,启动后自动打开并进行必要的数据同步。实现方法涉及修改`/etc/oratab`文件,调整`dbstart`和`dbshut`脚本以支持Data Guard的判断,以及配置系统启动脚本`/etc/rc.d/init.d/dbora`。文章提供了参考资料链接。
最低0.47元/天 解锁文章
1762

被折叠的 条评论
为什么被折叠?



