C/C++教程

【DB笔试面试748】在Oracle中,如何将RAC软件转换为单实例软件?

本文主要是介绍【DB笔试面试748】在Oracle中,如何将RAC软件转换为单实例软件?,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

♣          题目         部分

在Oracle中,如何将RAC软件转换为单实例软件?


     
♣          答案部分          


在RAC环境中,只有在集群正常启动的情况下才能创建和启动单实例的数据库,否则报错:

 1[oracle@raclhr-11gR2-N1 ~]$ sqlplus / as sysdba
 2
 3SQL*Plus: Release 11.2.0.3.0 Production on Tue Jun 5 09:40:26 2018
 4
 5Copyright (c) 1982, 2011, Oracle.  All rights reserved.
 6
 7Connected to an idle instance.
 8
 9SYS@OGGS> startup
10ORA-29702: error occurred in Cluster Group Service operation
11SYS@OGGS>
     


解决办法就是,根据MOS文档(ID 433310.1)按照以下步骤来禁用RAC特性:

NON-RAC Database Startup Giving Error ORA-29702 (文档 ID 433310.1)

1. 完全关闭数据库

2. 使用oracle用户重新编译RAC环境:

1$ cd $ORACLE_HOME/rdbms/lib
2$ make -f ins_rdbms.mk rac_off
3$ make -f ins_rdbms.mk ioracle
     


3. 启动数据库

需要注意的是,在执行编译后,集群仍然能正常启动,但是集群中的RAC数据库不能正常启动,会报错:

1SYS@lhrrac11> startup 
2ORA-01078: failure in processing system parameters
3ORA-00439: feature not enabled: Real Application Clusters
     


以上编译操作是可逆的,所以,可以执行以下操作进行恢复:

1$ cd $ORACLE_HOME/rdbms/lib
2$ make -f ins_rdbms.mk rac_on
3$ make -f ins_rdbms.mk ioracle
     


这篇关于【DB笔试面试748】在Oracle中,如何将RAC软件转换为单实例软件?的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!