Oracle数据库教程:磁盘空间不足导致日志不能归档
Oracle数据库教程:磁盘空间不足导致日志不能归档
我的数据库不知什么原因无故挂起,今天启动数据库报如下错误:SQL>alter database open;
alterdatabase open
*
ERROR atline 1:
ORA-16014:log 3 sequence# 99 not archived, no available destinations
ORA-00312:online log 3 thread 1: '+DGROUP1/oralife/redo03.log'
重做日志不能归档,查看日志文件:
- [Oracle@simpleit ~]$ cd admin/oralife/bdump/
- [oracle@simpleit bdump]$ tail -20 alert_oralife.log
- Thu Dec 1 11:13:18 2011
- Errors in file /home/oracle/admin/oralife/bdump/oralife_arc1_3465.trc:
- ORA-19504: Message 19504 not found; No message file for product=RDBMS, facility=ORA; arguments: [+DGROUP1/oralife/1_99_762803211.dbf]
- ORA-17502: Message 17502 not found; No message file for product=RDBMS, facility=ORA; arguments: [4] [+DGROUP1/oralife/1_99_762803211.dbf]
- ORA-15041: diskgroup space exhausted
- Thu Dec 1 11:13:18 2011
- ARC1: Error 19504 Creating archive log file to '+DGROUP1/oralife/1_99_762803211.dbf'
- ARC1: Failed to archive thread 1 sequence 99 (19504)
- ARCH: Archival stopped, error occurred. Will continue retrying
- Thu Dec 1 11:13:18 2011
- ORACLE Instance oralife - Archival Error
- Thu Dec 1 11:13:18 2011
- ORA-16038: Message 16038 not found; No message file for product=RDBMS, facility=ORA; arguments: [3] [99]
- ORA-19504: Message 19504 not found; No message file for product=RDBMS, facility=ORA
- ORA-00312: Message 312 not found; No message file for product=RDBMS, facility=ORA; arguments: [3] [1] [+DGROUP1/oralife/redo03.log]
- Thu Dec 1 11:13:18 2011
- Errors in file /home/oracle/admin/oralife/bdump/oralife_arc1_3465.trc:
- ORA-16038: Message 16038 not found; No message file for product=RDBMS, facility=ORA; arguments: [3] [99]
- ORA-19504: Message 19504 not found; No message file for product=RDBMS, facility=ORA
- ORA-00312: Message 312 not found; No message file for product=RDBMS, facility=ORA; arguments: [3] [1] [+DGROUP1/oralife/redo03.log]
于是知道是asm空间不足的原因导致,这时可以登录rman删除无用的归档日志,来释放磁盘空间。这时便可以成功启动数据库。
- RMAN> run{
- 2> delete archivelog until time 'sysdate-7';--删除7天前的无用的归档日志}
- RMAN> crosscheck archivelog all;
- RMAN> delete noprompt expired archivelog all;
- [oracle@simpleit bdump]$ sqlplus / as sysdba
- SQL*Plus: Release 10.2.0.1.0 - Production on 星期四 12月 1 20:48:17 2011
- Copyright (c) 1982, 2005, Oracle. All rights reserved.
- Connected to:
- Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
- With the Partitioning, OLAP and Data Mining options
- SQL> select status from v$instance;
- STATUS
- ------------
- MOUNTED
- SQL> alter database open;
- alter database open
- *
- ERROR at line 1:
- ORA-16014: log 3 sequence# 99 not archived, no available destinations
- ORA-00312: online log 3 thread 1: '+DGROUP1/oralife/redo03.log'
- SQL> shutdown immediate
- ORA-01109: database not open
- Database dismounted.
- ORACLE instance shut down.
- SQL> startup
- ORACLE instance started.
- Total System Global Area 167772160 bytes
- Fixed Size 1218316 bytes
- Variable Size 83888372 bytes
- Database Buffers 79691776 bytes
- Redo Buffers 2973696 bytes
- Database mounted.
- Database opened.
评论暂时关闭