ORA-00376:file x cannot be read at this time
2013-06-19 11:59
417 查看
之前出现过机房断电情况,重启数据库后发现出现ORA-00376的错误。
通过查询数据文件状态:
SQL> select file_id,online_status from dba_data_files order by 1;
FILE_ID ONLINE_STATUS
---------- -------------
1 SYSTEM
2 ONLINE
3 ONLINE
4 ONLINE
5 RECOVER
6 ONLINE
7 RECOVER
8 ONLINE
9 ONLINE
10 ONLINE
11 RECOVER
12 ONLINE
13 RECOVER
14 RECOVER
15 RECOVER
16 RECOVER
文件中出现了大量的recover的状态,需要进行介质恢复。
SQL> select file#, status, fuzzy, checkpoint_time, checkpoint_change#,
resetlogs_change#, resetlogs_time from v$datafile_header where file#=5;
FILE# STATUS FUZZY CHECKPOINT_TIME CHECKPOINT_CHANGE# RESETLOGS_CHANGE# RESETLOGS_TIME
---------- ------- ----- --------------- ------------------ ----------------- --------------
5 OFFLINE YES 2013-6-19 9:52: 38391683 940976 2013-5-15 19:1
当前的数据文件的SCN号为 38391683,需要寻找别这个高的archive log 或redo log。
SQL> Select sequence#,name,first_change#,next_change# from v$archived_log;
SEQUENCE# NAME FIRST_CHANGE# NEXT_CHANGE#
---------- -------------------------------------------------------------------------------- ------------- ------------
465 D:\APP\ARCHIVELOG\ARC0000000465_0815512562.0001 36366097 36618224
466 D:\APP\ARCHIVELOG\ARC0000000466_0815512562.0001 36618224 36843775
467 D:\APP\ARCHIVELOG\ARC0000000467_0815512562.0001 36843775 37065721
468 D:\APP\ARCHIVELOG\ARC0000000468_0815512562.0001 37065721 37294978
469 D:\APP\ARCHIVELOG\ARC0000000469_0815512562.0001 37294978 37572830
470 D:\APP\ARCHIVELOG\ARC0000000470_0815512562.0001 37572830 37818186
471 D:\APP\ARCHIVELOG\ARC0000000471_0815512562.0001 37818186 38093499
472 D:\APP\ARCHIVELOG\ARC0000000472_0815512562.0001 38093499 38346397
473 D:\APP\ARCHIVELOG\ARC0000000473_0815512562.0001 38346397 38381157
很幸运,38391683大于473这个最大的archive log 的SCN,我不需archive log 的帮助。recover所需的信息在redo log 中。
例如:数据文件file_id为5的处于recover状态,执行
select 'alter database recover datafile '||file_id||' ;' from dba_data_files where online_status
='RECOVER';
select 'alter database datafile '||file_id||' online;' from dba_data_files where online_status ='OFFLINE';
alter database recover datafile 5;
依次恢复状态为recover的数据文件。
再次查看online_status为offline状态,需要执行
Alter database datafile 5 online;
依次将处于offline的数据文件ONLINE。都online后数据库处于open状态了后,就可以用了。
如果数据库处于No Archive log 状态的时候,recover所需的信息只能从redo log 中获取,如果此时的redo log被overwrite了,将不能online数据文件,那只能想其他方法了。
Possible causes and solutions summary:
=====================================
A. Tablespace or Datafile offline.
B. Datafile does not exist at the OS level.
C. Datafile locked by Backup Software.
D. Incorrectly set ULIMIT on UNIX.
E. Rollback Segment with active transactions is unavailable
F. Possible Other Causes.
通过查询数据文件状态:
SQL> select file_id,online_status from dba_data_files order by 1;
FILE_ID ONLINE_STATUS
---------- -------------
1 SYSTEM
2 ONLINE
3 ONLINE
4 ONLINE
5 RECOVER
6 ONLINE
7 RECOVER
8 ONLINE
9 ONLINE
10 ONLINE
11 RECOVER
12 ONLINE
13 RECOVER
14 RECOVER
15 RECOVER
16 RECOVER
文件中出现了大量的recover的状态,需要进行介质恢复。
SQL> select file#, status, fuzzy, checkpoint_time, checkpoint_change#,
resetlogs_change#, resetlogs_time from v$datafile_header where file#=5;
FILE# STATUS FUZZY CHECKPOINT_TIME CHECKPOINT_CHANGE# RESETLOGS_CHANGE# RESETLOGS_TIME
---------- ------- ----- --------------- ------------------ ----------------- --------------
5 OFFLINE YES 2013-6-19 9:52: 38391683 940976 2013-5-15 19:1
当前的数据文件的SCN号为 38391683,需要寻找别这个高的archive log 或redo log。
SQL> Select sequence#,name,first_change#,next_change# from v$archived_log;
SEQUENCE# NAME FIRST_CHANGE# NEXT_CHANGE#
---------- -------------------------------------------------------------------------------- ------------- ------------
465 D:\APP\ARCHIVELOG\ARC0000000465_0815512562.0001 36366097 36618224
466 D:\APP\ARCHIVELOG\ARC0000000466_0815512562.0001 36618224 36843775
467 D:\APP\ARCHIVELOG\ARC0000000467_0815512562.0001 36843775 37065721
468 D:\APP\ARCHIVELOG\ARC0000000468_0815512562.0001 37065721 37294978
469 D:\APP\ARCHIVELOG\ARC0000000469_0815512562.0001 37294978 37572830
470 D:\APP\ARCHIVELOG\ARC0000000470_0815512562.0001 37572830 37818186
471 D:\APP\ARCHIVELOG\ARC0000000471_0815512562.0001 37818186 38093499
472 D:\APP\ARCHIVELOG\ARC0000000472_0815512562.0001 38093499 38346397
473 D:\APP\ARCHIVELOG\ARC0000000473_0815512562.0001 38346397 38381157
很幸运,38391683大于473这个最大的archive log 的SCN,我不需archive log 的帮助。recover所需的信息在redo log 中。
例如:数据文件file_id为5的处于recover状态,执行
select 'alter database recover datafile '||file_id||' ;' from dba_data_files where online_status
='RECOVER';
select 'alter database datafile '||file_id||' online;' from dba_data_files where online_status ='OFFLINE';
alter database recover datafile 5;
依次恢复状态为recover的数据文件。
再次查看online_status为offline状态,需要执行
Alter database datafile 5 online;
依次将处于offline的数据文件ONLINE。都online后数据库处于open状态了后,就可以用了。
如果数据库处于No Archive log 状态的时候,recover所需的信息只能从redo log 中获取,如果此时的redo log被overwrite了,将不能online数据文件,那只能想其他方法了。
Possible causes and solutions summary:
=====================================
A. Tablespace or Datafile offline.
B. Datafile does not exist at the OS level.
C. Datafile locked by Backup Software.
D. Incorrectly set ULIMIT on UNIX.
E. Rollback Segment with active transactions is unavailable
F. Possible Other Causes.
相关文章推荐
- ORA-00376:file x cannot be read at this time
- ORA-00376: file 202 cannot be read at this time ORA-01110: data file 202故障处理
- ORA-00376:file xx cannot be read at this time
- ORA-25152: TEMPFILE cannot be dropped at this time问题解决
- The Nook cannot read this file. it may be an unsupported format
- Sharepoint中遭遇"The Path specified cannot be used at this time."
- Citrix的一个安装问题(The Configuration file(s) for this site could not be read )
- 20110323_BMXAA7901E - You cannot log in at this time. Contact the system administrator
- 解决使用maven的java web项目导入后出现的有关问题, -cannot be read or is not a valid zip file
- ORA-01261: Parameter db_recovery_file_dest destination string cannot be translat
- cannot be read or is not a valid ZIP file
- 解决MySQL导入文件问题(The selected file was generated by mysqldump and cannot be restored by this applicati)
- Multiple annotations found at this line: - String cannot be resolved to a type
- Eclipse的JSP页面提示Multiple annotations found at this line或者String cannot be resolved to a type
- 解决使用maven的java web项目导入后出现的有关问题 -cannot be read or is not a valid ZIP file
- eclipse异常:in project 'xxx' cannot be read or is not a valid ZIP file
- 记一个mvn奇怪错误: Archive for required library: 'D:/mvn/repos/junit/junit/3.8.1/junit-3.8.1.jar' in project 'xxx' cannot be read or is not a valid ZIP file
- 转换VS格式时提示错误 This file requires _WIN32_WINNT to be #defined at least to 0x0403. Value 0x0
- 错误提示:Multiple annotations found at this line: basePath cannot be resolved to a variable
- could not be installed at this time