ASM路徑問題致使數據庫不能正常啓動 -- 報:ORA-03113: end-of-file on communication channel

環境描述:html

操做系統版本:Red Hat Enterprise Linux Server release 6.5 (Santiago)sql

數據庫版本:Oracle 11.2.0.4 RAC數據庫

場景描述:oracle

Oracle RAC環境搭建完成以後,數據庫能夠啓動到mounted狀態,沒法啓動到open狀態;其餘的CRS集羣服務、ASM服務狀態正常!!!ui

處理過程:spa

[oracle@oracle01 ~]$ sqlplus / as sysdba;

SQL*Plus: Release 11.2.0.4.0 Production on Thu Jun 15 12:48:00 2017
Copyright (c) 1982, 2013, Oracle.  All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options

SQL> 
SQL> select open_mode from v$database;

OPEN_MODE
--------------------
MOUNTED

SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01154: database busy. Open, close, mount, and dismount not allowed now

++++++++++++++++++++++++++++++++++++++++++操作系統

再次嘗試:.net

SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01154: database busy. Open, close, mount, and dismount not allowed now

啓動數據庫一直停留在Database mounted.
最後報ORA-03113: end-of-file on communication channel

++++++++++++++++++++++++++++++++++++++++unix

查看告警日誌,輸出以下錯誤信息:日誌

<txt>ORACLE Instance EBJDB1 - Archival Error
 </txt>
</msg>
<msg time='2017-06-15T14:38:26.640+08:00' org_id='oracle' comp_id='rdbms'
 client_id='' type='UNKNOWN' level='16'
 host_id='oracle01' host_addr='127.0.0.1' module=''
 pid='7977'>
 <txt>ORA-16014: log 1 sequence# 5 not archived, no available destinations
ORA-00312: online log 1 thread 1: &apos;+DATA/ebjdb/onlinelog/group_1.261.945309179&apos;
ORA-00312: online log 1 thread 1: &apos;+FRA/ebjdb/onlinelog/group_1.257.945309181&apos;
 </txt>
</msg>
<msg time='2017-06-15T14:38:26.857+08:00' org_id='oracle' comp_id='rdbms'
 client_id='' type='UNKNOWN' level='16'
 host_id='oracle01' host_addr='127.0.0.1' module=''
 pid='7977'>
 <txt>Archiver process freed from errors. No longer stopped
 </txt>
</msg>

有戲!!!

初步分析是:日誌不能正常歸檔,致使了數據庫只能在mounted狀態,在往open狀態切換的時候,找不到相關的日誌歸檔路徑,致使數據庫不能啓動到open狀態

++++++++++++++++++++++++++++++++++++++++

開始處理:

首先查看數據庫當前啓動狀態:

SQL> select open_mode from v$database;

OPEN_MODE
--------------------
MOUNTED

查看當前數據庫的歸檔路徑設置:

注:數據庫在open狀態下,能夠經過以下命令查看歸檔信息,

SQL> archive log list
Database log mode           Archive Mode
Automatic archival           Enabled
Archive destination           +FRA/archivelog/
Oldest online log sequence     8
Next log sequence to archive   9
Current log sequence           9

數據庫在mounted狀態下的時候,須要經過查看參數文件來確認:

SQL> set linesize 200
SQL> set pagesize 100
SQL> show parameter log_

NAME                     TYPE     VALUE
------------------------------------ ----------- ------------------------------
audit_syslog_level             string
commit_logging                 string
db_create_online_log_dest_1         string
db_create_online_log_dest_2         string
db_create_online_log_dest_3         string
db_create_online_log_dest_4         string
db_create_online_log_dest_5         string
enable_ddl_logging             boolean     FALSE
log_archive_config             string
log_archive_dest             string
.. .. .. .. ..              .. .. .......
log_archive_dest_1             string     LOCATION=+FRA/archivelog/
log_archive_dest_state_4         string     enable
log_archive_dest_state_5         string     enable
log_archive_dest_state_9         string     enable
log_archive_duplex_dest          string
log_archive_format             string     %t_%s_%r.dbf
log_archive_local_first          boolean     TRUE
log_archive_max_processes         integer     4
log_archive_min_succeed_dest         integer     1
log_archive_start             boolean     FALSE
log_archive_trace             integer     0
log_buffer                 integer     2379776
log_checkpoint_interval          integer     0
log_checkpoint_timeout             integer     1800
log_checkpoints_to_alert         boolean     FALSE
log_file_name_convert             string
remote_login_passwordfile         string     EXCLUSIVE
sec_case_sensitive_logon         boolean     TRUE
sec_max_failed_login_attempts         integer     10

能夠看出歸檔日誌的路徑是:LOCATION=+FRA/archivelog/

+++++++++++++++++++++++++++++++++++
切換到oracle用戶或者grid用戶下,執行asmcmd查看磁盤組信息:

[grid@oracle01 ~]$ asmcmd
ASMCMD> ls
BAK/
CRS/
DATA/
FRA/
ASMCMD> 
ASMCMD> cd FRA
ASMCMD> ls
EBJDB/
ASMCMD> 

發現沒有+FRA/archivelog目錄,咱們在+FRA目錄下,建立archivelog目錄:
ASMCMD> pwd      
+FRA
ASMCMD> mkdir archivelog 
archivelog/
ASMCMD> cd archivelog
ASMCMD> pwd
+FRA/archivelog
ASMCMD> 

OK!!!!!!歸檔日誌目錄設置完畢!
++++++++++++++++++++++++++++++++++++++

回到sqlplus界面,

SQL> alter database open;

SQL> select instance_name,status from v$instance;

INSTANCE_NAME     STATUS
---------------- ------------
EBJDB1         OPEN

查看集羣服務狀態:

[grid@oracle01 ~]$ crsctl stat res -t
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS       
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.BAK.dg
               ONLINE  ONLINE       oracle01                                  
               ONLINE  ONLINE       oracle02                                  
ora.CRS.dg
               ONLINE  ONLINE       oracle01                                  
               ONLINE  ONLINE       oracle02                                  
ora.DATA.dg
               ONLINE  ONLINE       oracle01                                  
               ONLINE  ONLINE       oracle02                                  
ora.FRA.dg
               ONLINE  ONLINE       oracle01                                  
               ONLINE  ONLINE       oracle02                                  
ora.LISTENER.lsnr
               ONLINE  ONLINE       oracle01                                  
               ONLINE  ONLINE       oracle02                                  
ora.asm
               ONLINE  ONLINE       oracle01              Started             
               ONLINE  ONLINE       oracle02              Started             
ora.gsd
               ONLINE  OFFLINE      oracle01                                  
               ONLINE  OFFLINE      oracle02                                  
ora.net1.network
               ONLINE  ONLINE       oracle01                                  
               ONLINE  ONLINE       oracle02                                  
ora.ons
               ONLINE  ONLINE       oracle01                                  
               ONLINE  ONLINE       oracle02                                  
ora.registry.acfs
               ONLINE  ONLINE       oracle01                                  
               ONLINE  ONLINE       oracle02                                  
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       oracle01                                  
ora.cvu
      1        ONLINE  ONLINE       oracle01                                  
ora.db.db
      1        ONLINE  ONLINE       oracle01              Open                
      2        ONLINE  ONLINE       oracle02              Open                
ora.oracle01.vip
      1        ONLINE  ONLINE       oracle01                                  
ora.oracle02.vip
      1        ONLINE  ONLINE       oracle02                                  
ora.oc4j
      1        ONLINE  ONLINE       oracle01                                  
ora.scan1.vip
      1        ONLINE  ONLINE       oracle01      

 

OK!!! 焦急的心情稍許平靜!!!!有木有!!!
網上查找各類資料的時候,心情特別難受,都開始懷疑人生了,對面的純開發同事,人家一天啥事沒有。。。。。此次問題雖然解決了,之後估計還會有相同的想法, 哈哈!!!

其餘參考:
http://blog.csdn.net/tianlesoftware/article/details/6051672
http://blog.csdn.net/jingleli21/article/details/45888295
http://www.itpub.net/thread-1510308-1-1.html
https://wenku.baidu.com/view/755ddc25bcd126fff7050bdc.html
http://blog.chinaunix.net/uid-28813259-id-3987260.html

相關文章
相關標籤/搜索