ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 使用DBCA添加新实例时出现CRS-215错误

使用DBCA添加新实例时出现CRS-215错误

原创 Linux操作系统 作者:yangtingkun 时间:2009-04-29 23:28:52 0 删除 编辑

最近在测试RAC环境添加删除实例的操作,应该通过DBCA来添加或删除实例,今天在添加新实例的时候碰到了CRS-215错误。

CLUSTER_DATABASE_INSTANCES参数:http://yangtingkun.itpub.net/post/468/482960

改变RAC参数可能引发的参数不一致的问题:http://yangtingkun.itpub.net/post/468/483433

 

 

详细的错误信息为:

PRKP-1001:Error starting instance test2 on node ser2
CRS-0215:Could not start resource
ora.test.test2.inst.

类似的添加节点操作执行了很多次了,因此不应该有什么问题。

这个错误属于异常错误,Oracle的文档给出的解决方法时检查对应的日志信息:

CRS-0215: Could not start resource '%s'.
Cause: There was an internal error while starting the resource.
Action: Check the CRS daemon log file.

metalink中有专门介绍CRS-215错误的文章:Doc ID:  781632.1

根据文档的描述,检查对应的日志,首先检查$ORA_CRS_HOME目录下的log/HOSTNAME/racg,检查vipons对应的日志。

当前这个问题显然和VIP以及ONS无关,因为类似的测试已经进行过很多次了。

检查ASM实例的日志,也没有发现问题。

最后检查ORACLE数据库的日志,位置在ORACLE_HOME目录下的log/HOSTNAME/racg,检查文件imontest.log发现下面的问题。

Oracle Database 11g RACG Release 11.1.0.6.0 Production Copyright 1996, 2006, Oracle.  All rights reserved.

SQL*Plus: Release 11.1.0.6.0 - Production on Wed Apr 22 17:02:45 2009

Copyright (c) 1982, 2007, Oracle.  All rights reserved.

Enter user-name: Connected to an idle instance.

SQL> ORA-29707: inconsistent value 1 for initialization parameter cluster_database_instances with other instances
SQL> Disconnected


SQL*Plus: Release 11.1.0.6.0 - Production on Wed Apr 22 17:02:51 2009

Copyright (c) 1982, 2007, Oracle.  All rights reserved.

Enter user-name: Connected to an idle instance.

SQL> ORACLE instance shut down.
SQL> Disconnected

第一个操作应该是调用SVRCTL命令,启动数据库实例是的错误,而一个应该是出现错误后,DBCA通过SQLPLUS关闭出现错误的实例。

根据这个错误信息ORA-29707,错误已经很明显了,由于已经启动的实例中CLUSTER_DATABASE_INSTANCES参数的设置与SPFILE文件中的设置不同,从而导致新实例启动的时候,出现了ORA-29707的错误。

登陆启动的实例验证一下是否是这个问题:

bash-3.00$ sqlplus "/ as sysdba"

SQL*Plus: Release 11.1.0.6.0 - Production on 星期四 4 23 16:21:39 2009

Copyright (c) 1982, 2007, Oracle.  All rights reserved.


连接到:
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP, Data Mining
and Real Application Testing options

SQL> set pages 100 lines 120
SQL> show parameter cluster_database

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
cluster_database                     boolean     TRUE
cluster_database_instances           integer     2
SQL> col name format a30
SQL> col value format a30
SQL> select sid, name, value
  2  from v$spparameter
  3  where name = 'cluster_database_instances';

SID        NAME                           VALUE
---------- ------------------------------ ------------------------------
*          cluster_database_instances     1

无论是RAC环境实例设置不同的参数导致的错误,还是初始化CLUSTER_DATABASE_INSTANCES参数的设置,在文章开头的连接中都有详细的说明,这里就不重复了。

这篇文章的主要目的是介绍当一个RAC环境出现了CLUSTER相关的错误后,如何去检查问题。

回到DBCA运行的图形化界面,点击确定后,DBCA随后的执行没有任何的错误,剩下的操作居然顺利执行完了。

看来启动新实例应该是最后的步骤,这个步骤的失败对于添加实例的操作没有本质的影响。

SQL> alter system set cluster_database_instances = 2 scope = spfile;

系统已更改。

SQL> host
$ srvctl start inst -d test -i test2
$ exit

SQL> select name from v$database;

NAME
------------------------------
TEST

SQL> select instance_name from v$instance;

INSTANCE_NAME
----------------
test1

SQL> select instance_name, status from gv$instance;

INSTANCE_NAME    STATUS
---------------- ------------
test1            OPEN
test2            OPEN

改正错误后,发现不但实例添加没有问题,且SRVCTL命令中的配置也已经添加成功,这应该是为数不多的出现报错,还能顺利完成工作的情况之一。

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/4227/viewspace-592311/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
暂无介绍

注册时间:2007-12-29

  • 博文量
    1955
  • 访问量
    10456774