晚上接到用户电话由于ups停电检修,需关闭rac。shutdown immediate 时hang住,abort关闭,但startup时报错:
SQL> startup
ORACLE instance started.
Total System Global Area 1.3629E+10 bytes
Fixed Size 2194168 bytes
Variable Size 6912214280 bytes
Database Buffers 6677331968 bytes
Redo Buffers 37339136 bytes
Database mounted.
ORA-03113: end-of-file on communication channel
Process ID: 4982
Session ID: 35 Serial number: 3
检查alertlog发现:
Mon Jun 27 20:53:49 2011
ARC1 started with pid=37, OS id=5167
SUCCESS: diskgroup ARCH was mounted
Errors in file /u01/app/oracle/diag/rdbms/zlsora9/zlsora92/trace/zlsora92_ora_5150.trc:
ORA-16038: log 3 sequence# 3 cannot be archived
ORA-00254: error in archive control string ''
ORA-00312: online log 3 thread 2: '+DATA/zlsora9/redo03.log'
ORA-15173: entry 'zlsora9' does not exist in directory '/'
Mon Jun 27 20:53:49 2011
System state dump requested by (instance=2, osid=5150), summary=[abnormal instance termination].
System State dumped to trace file /u01/app/oracle/diag/rdbms/zlsora9/zlsora92/trace/zlsora92_diag_5089.trc
Mon Jun 27 20:53:49 2011
ARC2 started with pid=38, OS id=5169
USER (ospid: 5150): terminating the instance due to error 16038
Dumping diagnostic data in directory=[cdmp_20110627205349], requested by (instance=2, osid=5150), summary=[abnormal instance termination].
Instance terminated by USER, pid = 5150
突然想起来前段时间打开arch时,设置log_archive_dest='+arch/zlsora9',但+arch下并没有zlsora9这个目录,问题找到了,下面解决就很容易了.
解决:
QL> archive log list
Database log mode Archive Mode
Automatic archival Enabled
Archive destination +ARCH/zlsora9
Oldest online log sequence 10
Next log sequence to archive 10
Current log sequence 11
SQL>
SQL> alter system set log_archive_dest='+arch';
System altered.
SQL>
SQL>
SQL> archive log list
Database log mode Archive Mode
Automatic archival Enabled
Archive destination +ARCH
Oldest online log sequence 10
Next log sequence to archive 10
Current log sequence 11
SQL>
SQL>
SQL> startup mount
ORA-01081: cannot start already-running ORACLE - shut it down first
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 1.3629E+10 bytes
Fixed Size 2194168 bytes
Variable Size 6912214280 bytes
Database Buffers 6677331968 bytes
Redo Buffers 37339136 bytes
Database mounted.
Database opened.
SQL> archive log list
Database log mode Archive Mode
Automatic archival Enabled
Archive destination +ARCH
Oldest online log sequence 13
Next log sequence to archive 14
Current log sequence 14
同理在2号机修改log_archive_dest='+arch';startup正常.
修改参数时要小心呀!
本文详细记录了一次Oracle数据库因UPS停电导致的RAC关闭故障,并通过检查alertlog找到问题原因,即log_archive_dest参数配置错误。文章进一步介绍了如何在数据库中修改此参数并成功启动数据库,以及在另一台机器上进行类似操作以确保数据库正常运行。

1283

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



