zoukankan      html  css  js  c++  java
  • 错误ORA-29760: instance_number parameter not specified的解决办法

    之前搭建了RAC的测试环境后,检查节点状态发现节点2的实例没有启动:

    [oracle@node1 ~]$ srvctl status database -d GZYT
    Instance GZYT1 is running on node node1
    Instance GZYT2 is not running on node node2

    尝试在节点2启动数据库,提示实例的数字参数没有指定:

    [oracle@node2 ~]$ export ORACLE_SID=GZYT2
    [oracle@node2 ~]$ sqlplus / as sysdba
    
    SQL*Plus: Release 11.2.0.3.0 Production on Wed Jan 24 21:07:21 2018
    
    Copyright (c) 1982, 2011, Oracle.  All rights reserved.
    
    Connected to an idle instance.
    
    SQL> startup
    ORA-29760: instance_number parameter not specified

    查看节点的其他资源都是正常:

    [grid@node1 ~]$ crsctl stat res -t
    --------------------------------------------------------------------------------
    NAME           TARGET  STATE        SERVER                   STATE_DETAILS       
    --------------------------------------------------------------------------------
    Local Resources
    --------------------------------------------------------------------------------
    ora.DATA.dg
                   ONLINE  ONLINE       node1                                        
                   ONLINE  ONLINE       node2                                        
    ora.FRA.dg
                   ONLINE  ONLINE       node1                                        
                   ONLINE  ONLINE       node2                                        
    ora.LISTENER.lsnr
                   ONLINE  ONLINE       node1                                        
                   ONLINE  ONLINE       node2                                        
    ora.OCRVOTE.dg
                   ONLINE  ONLINE       node1                                        
                   ONLINE  ONLINE       node2                                        
    ora.asm
                   ONLINE  ONLINE       node1                    Started             
                   ONLINE  ONLINE       node2                    Started             
    ora.gsd
                   OFFLINE OFFLINE      node1                                        
                   OFFLINE OFFLINE      node2                                        
    ora.net1.network
                   ONLINE  ONLINE       node1                                        
                   ONLINE  ONLINE       node2                                        
    ora.ons
                   ONLINE  ONLINE       node1                                        
                   ONLINE  ONLINE       node2                                        
    ora.registry.acfs
                   ONLINE  ONLINE       node1                                        
                   ONLINE  ONLINE       node2                                      

    通过已正常启动的节点1查看RAC的参数文件是否缺少实例2的SID:

    [oracle@node1 ~]$ export ORACLE_SID=GZYT1
    [oracle@node1 ~]$ sqlplus / as sysdba
    
    SQL*Plus: Release 11.2.0.3.0 Production on Wed Jan 24 21:07:21 2018
    
    Copyright (c) 1982, 2011, Oracle.  All rights reserved.
    
    Connected to an idle instance.
    SQL> create pfile='/tmp/gzyt.ora' from spfile='+DATA/GZYT/spfileGZYT.ora';

    File created.
    SQL> !cat /tmp/gzyt.ora
    GZYT1.__db_cache_size=251658240
    GZYT1.__java_pool_size=4194304
    GZYT1.__large_pool_size=4194304
    GZYT1.__pga_aggregate_target=327155712
    GZYT1.__sga_target=482344960
    GZYT1.__shared_io_pool_size=0
    GZYT1.__shared_pool_size=213909504
    GZYT1.__streams_pool_size=0
    *.audit_file_dest='/u01/app/oracle/admin/GZYT/adump'
    *.audit_trail='db'
    *.cluster_database=true
    *.compatible='11.2.0.0.0'
    *.control_files='+DATA/gzyt/controlfile/current.260.966128175','+FRA/gzyt/controlfile/current.256.966128177'
    *.db_block_size=8192
    *.db_create_file_dest='+DATA'
    *.db_domain=''
    *.db_name='GZYT'
    *.db_recovery_file_dest='+FRA'
    *.db_recovery_file_dest_size=4322230272
    *.diagnostic_dest='/u01/app/oracle'
    *.dispatchers='(PROTOCOL=TCP) (SERVICE=GZYTXDB)'
    GZYT1.instance_number=1
    *.log_archive_format='%t_%s_%r.dbf'
    *.memory_target=808452096
    *.open_cursors=300
    *.processes=150
    *.remote_listener='scanip:1521'
    *.remote_login_passwordfile='exclusive'
    GZYT1.thread=1
    GZYT1.undo_tablespace='UNDOTBS1'

    由上面输入可知确实少了实例2的一些信息,编辑刚刚创建的pfile,增加以下内容:

    GZYT2.instance_number=2
    GZYT2.thread=2
    GZYT2.undo_tablespace='UNDOTBS2'

    确保创建了实例2的undo表空间和日志文件:

    #结果发现没有实例2所需要的undo表空间和日志文件
    SQL> select file#,name from v$datafile; FILE# NAME ---------- -------------------------------------------------- 1 +DATA/gzyt/datafile/system.256.966128053 2 +DATA/gzyt/datafile/sysaux.257.966128053 3 +DATA/gzyt/datafile/undotbs1.258.966128055 4 +DATA/gzyt/datafile/users.259.966128055 5 +DATA/gzyt/datafile/example.265.966128233 SQL> select group#,thread#,members,status from v$log; GROUP# THREAD# MEMBERS STATUS ---------- ---------- ---------- ---------------- 1 1 2 INACTIVE 2 1 2 ACTIVE 3 1 2 CURRENT

    在节点1数据库增加节点2实例的日志文件和undo表空间,并启动实例2的日志线程:

    SQL> create undo tablespace datafile '+DATA' size 115m
    
    Tablespace created.
    
    SQL> alter database add logfile thread 2 group 4 ('+DATA','+DATA') size 50m;
    
    Database altered.
    
    SQL> alter database add logfile thread 2 group 5 ('+DATA','+DATA') size 50m;
    
    Database altered.
    
    SQL> alter database add logfile thread 2 group 6 ('+DATA','+DATA') size 50m;
    
    Database altered.
    
    SQL> alter database enable thread 2;
    
    Database altered.

    #保存修改后的spfile
    SQL> create spfile='+DATA/GZYT/spfileGZYT.ora' from pfile='/tmp/gzyt.ora';

    File created.

    重新尝试在节点2启动数据库:

    #成功启动数据库
    SQL> startup
    ORACLE instance started.
    
    Total System Global Area  807682048 bytes
    Fixed Size                  1347964 bytes
    Variable Size             541068932 bytes
    Database Buffers          260046848 bytes
    Redo Buffers                5218304 bytes
    Database mounted.
    Database opened.
    SQL> 

    重新查看节点数据库状态:

    [oracle@node1 ~]$ srvctl status database -d GZYT
    Instance GZYT1 is running on node node1
    Instance GZYT2 is running on node node2

    两个节点的实例都已成功启动。

  • 相关阅读:
    IOS开发学习笔记020-练习总结
    IOS开发学习笔记019-动态创建控件
    IOS开发学习笔记018- 一般控件的使用
    IOS应用程序开发流程
    IOS开发学习笔记017-第一个IOS应用
    IOS开发学习笔记016-Foundation框架
    IOS开发学习笔记015-block和protocol
    IOS开发学习笔记014-ARC机制
    IOS开发学习笔记013-内存管理
    IOS开发学习笔记012-核心语法
  • 原文地址:https://www.cnblogs.com/shaozi/p/8344031.html
Copyright © 2011-2022 走看看