今日好痛苦,做了N*N次都未成功。原数据库现就剩下一个冷备份,通过一般操作后,发现undo表空间有问题,导致数据库不能打开.
我尝试过多次网上的办法,将UDOTBS01.DBF设为离线,然后再alter database open;问题是一open就出现ora-01092,
但我见网上的说法可以的。跟着我自己新建一个数据库,通过网上的办法做一个测试 挂载数据库-设undo表为离线-再打开数据库的步骤是可行的.但现在问题到需要恢复的数据库打开时弹出ora-01092
天啊,我究竟做错了哪步啊~
我尝试过多次网上的办法,将UDOTBS01.DBF设为离线,然后再alter database open;问题是一open就出现ora-01092,
但我见网上的说法可以的。跟着我自己新建一个数据库,通过网上的办法做一个测试 挂载数据库-设undo表为离线-再打开数据库的步骤是可行的.但现在问题到需要恢复的数据库打开时弹出ora-01092
天啊,我究竟做错了哪步啊~
ORACLE V9.2.0.1.0 - Production vsnsta=0
vsnsql=12 vsnxtr=3
Windows 2000 Version 5.1 Service Pack 3, CPU type 586
Tue Oct 07 08:32:27 2008
Starting ORACLE instance (normal)
LICENSE_MAX_SESSION = 0
LICENSE_SESSIONS_WARNING = 0
SCN scheme 2
Using log_archive_dest parameter default value
LICENSE_MAX_USERS = 0
SYS auditing is disabled
Starting up ORACLE RDBMS Version: 9.2.0.1.0.
System parameters with non-default values:
processes = 150
timed_statistics = TRUE
shared_pool_size = 50331648
large_pool_size = 8388608
java_pool_size = 33554432
control_files = d:\oracle\oradata\person\CONTROL01.CTL, d:\oracle\oradata\person\CONTROL02.CTL, d:\oracle\oradata\person\CONTROL03.CTL
db_block_size = 8192
db_cache_size = 25165824
compatible = 9.2.0.0.0
db_file_multiblock_read_count= 16
fast_start_mttr_target = 300
undo_management = MANUAL
undo_tablespace = system
undo_retention = 10800
remote_login_passwordfile= EXCLUSIVE
db_domain =
instance_name = person
dispatchers = (PROTOCOL=TCP) (SERVICE=personXDB)
job_queue_processes = 10
hash_join_enabled = TRUE
background_dump_dest = d:\oracle\admin\person\bdump
user_dump_dest = d:\oracle\admin\person\udump
core_dump_dest = d:\oracle\admin\person\cdump
sort_area_size = 524288
db_name = person
open_cursors = 300
star_transformation_enabled= FALSE
query_rewrite_enabled = FALSE
pga_aggregate_target = 25165824
aq_tm_processes = 1
PMON started with pid=2
DBW0 started with pid=3
LGWR started with pid=4
CKPT started with pid=5
SMON started with pid=6
RECO started with pid=7
CJQ0 started with pid=8
QMN0 started with pid=9
Tue Oct 07 08:32:35 2008
starting up 1 shared server(s) ...
starting up 1 dispatcher(s) for network address '(ADDRESS=(PARTIAL=YES)(PROTOCOL=TCP))'...
Tue Oct 07 08:32:37 2008
alter database mount exclusive
Tue Oct 07 08:32:42 2008
Successful mount of redo thread 1, with mount id 834074533.
Tue Oct 07 08:32:42 2008
Database mounted in Exclusive Mode.
Completed: alter database mount exclusive
Tue Oct 07 08:32:42 2008
alter database open
Tue Oct 07 08:32:42 2008
Errors in file d:\oracle\admin\person\bdump\person_dbw0_2068.trc:
ORA-01157: cannot identify/lock data file 201 - see DBWR trace file
ORA-01110: data file 201: 'D:\ORACLE\ORADATA\PERSON\TEMP01.DBF'
ORA-27046: file size is not a multiple of logical block size
OSD-04012: 文件大小不匹配 (OS 140521472)Tue Oct 07 08:32:43 2008
Beginning crash recovery of 1 threads
Tue Oct 07 08:32:43 2008
Started first pass scan
Tue Oct 07 08:32:43 2008
Completed first pass scan
49 redo blocks read, 4 data blocks need recovery
Tue Oct 07 08:32:43 2008
Started recovery at
Thread 1: logseq 347, block 3, scn 0.0
Recovery of Online Redo Log: Thread 1 Group 2 Seq 347 Reading mem 0
Mem# 0 errs 0: D:\ORACLE\ORADATA\PERSON\REDO02.LOG
Tue Oct 07 08:32:44 2008
Ended recovery at
Thread 1: logseq 347, block 52, scn 0.303145158
4 data blocks read, 4 data blocks written, 49 redo blocks read
Crash recovery completed successfully
Tue Oct 07 08:32:44 2008
Errors in file d:\oracle\admin\person\bdump\person_dbw0_2068.trc:
ORA-01157: cannot identify/lock data file 201 - see DBWR trace file
ORA-01110: data file 201: 'D:\ORACLE\ORADATA\PERSON\TEMP01.DBF'
ORA-27046: file size is not a multiple of logical block size
OSD-04012: 文件大小不匹配 (OS 140521472)Tue Oct 07 08:32:44 2008
Errors in file d:\oracle\admin\person\bdump\person_dbw0_2068.trc:
ORA-01186: file 201 failed verification tests
ORA-01157: cannot identify/lock data file 201 - see DBWR trace file
ORA-01110: data file 201: 'D:\ORACLE\ORADATA\PERSON\TEMP01.DBF'Tue Oct 07 08:32:44 2008
File 201 not verified due to error ORA-01157
Tue Oct 07 08:32:44 2008
Thread 1 advanced to log sequence 348
Thread 1 opened at log sequence 348
Current log# 3 seq# 348 mem# 0: D:\ORACLE\ORADATA\PERSON\REDO03.LOG
Successful open of redo thread 1.
Tue Oct 07 08:32:44 2008
SMON: enabling cache recovery
SMON: enabling tx recovery
Tue Oct 07 08:32:46 2008
Database Characterset is ZHS16GBK
Tue Oct 07 08:32:46 2008
SMON: about to recover undo segment 1
SMON: undo segment 1 as needs recovery
SMON: about to recover undo segment 2
SMON: undo segment 2 as needs recovery
SMON: about to recover undo segment 3
SMON: undo segment 3 as needs recovery
SMON: about to recover undo segment 4
SMON: undo segment 4 as needs recovery
SMON: about to recover undo segment 5
SMON: undo segment 5 as needs recovery
SMON: about to recover undo segment 6
SMON: undo segment 6 as needs recovery
SMON: about to recover undo segment 7
SMON: undo segment 7 as needs recovery
SMON: about to recover undo segment 8
SMON: undo segment 8 as needs recovery
SMON: about to recover undo segment 9
SMON: undo segment 9 as needs recovery
SMON: about to recover undo segment 10
SMON: undo segment 10 as needs recovery
Tue Oct 07 08:32:48 2008
Errors in file d:\oracle\admin\person\bdump\person_smon_2096.trc:
ORA-00604: error occurred at recursive SQL level 2
ORA-00376: file 2 cannot be read at this time
ORA-01110: data file 2: 'D:\ORACLE\ORADATA\PERSON\UNDOTBS01.DBF'
SMON: undo segment 1 as needs recovery
SMON: about to recover undo segment 2
SMON: undo segment 2 as needs recovery
SMON: about to recover undo segment 3
SMON: undo segment 3 as needs recovery
SMON: about to recover undo segment 4
SMON: undo segment 4 as needs recovery
SMON: about to recover undo segment 5
SMON: undo segment 5 as needs recovery
SMON: about to recover undo segment 6
SMON: undo segment 6 as needs recovery
SMON: about to recover undo segment 7
SMON: undo segment 7 as needs recovery
SMON: about to recover undo segment 8
SMON: undo segment 8 as needs recovery
SMON: about to recover undo segment 9
SMON: undo segment 9 as needs recovery
SMON: about to recover undo segment 10
SMON: undo segment 10 as needs recovery
Tue Oct 07 08:32:49 2008
Errors in file d:\oracle\admin\person\bdump\person_smon_2096.trc:
ORA-00604: error occurred at recursive SQL level 1
ORA-00376: file 2 cannot be read at this time
ORA-01110: data file 2: 'D:\ORACLE\ORADATA\PERSON\UNDOTBS01.DBF'Tue Oct 07 08:32:49 2008
Errors in file d:\oracle\admin\person\udump\person_ora_908.trc:
ORA-00604: ?? SQL ? 2 ????
ORA-00376: ???????? 2
ORA-01110: ???? 2: 'D:\ORACLE\ORADATA\PERSON\UNDOTBS01.DBF'Tue Oct 07 08:32:49 2008
Error 604 happened during db open, shutting down database
USER: terminating instance due to error 604
Instance terminated by USER, pid = 908
ORA-1092 signalled during: alter database open...
Tue Oct 07 10:29:00 2008
Starting ORACLE instance (normal)
LICENSE_MAX_SESSION = 0
LICENSE_SESSIONS_WARNING = 0
SCN scheme 2
Using log_archive_dest parameter default value
LICENSE_MAX_USERS = 0
SYS auditing is disabled
Starting up ORACLE RDBMS Version: 9.2.0.1.0.
System parameters with non-default values:
processes = 150
timed_statistics = TRUE
shared_pool_size = 50331648
large_pool_size = 8388608
java_pool_size = 33554432
control_files = d:\oracle\oradata\person\CONTROL01.CTL, d:\oracle\oradata\person\CONTROL02.CTL, d:\oracle\oradata\person\CONTROL03.CTL
db_block_size = 8192
db_cache_size = 25165824
compatible = 9.2.0.0.0
db_file_multiblock_read_count= 16
fast_start_mttr_target = 300
undo_management = MANUAL
undo_tablespace = system
undo_retention = 10800
remote_login_passwordfile= EXCLUSIVE
db_domain =
instance_name = person
dispatchers = (PROTOCOL=TCP) (SERVICE=personXDB)
job_queue_processes = 10
hash_join_enabled = TRUE
background_dump_dest = d:\oracle\admin\person\bdump
user_dump_dest = d:\oracle\admin\person\udump
core_dump_dest = d:\oracle\admin\person\cdump
sort_area_size = 524288
db_name = person
open_cursors = 300
star_transformation_enabled= FALSE
query_rewrite_enabled = FALSE
pga_aggregate_target = 25165824
aq_tm_processes = 1
PMON started with pid=2
DBW0 started with pid=3
LGWR started with pid=4
CKPT started with pid=5
SMON started with pid=6
RECO started with pid=7
CJQ0 started with pid=8
QMN0 started with pid=9
Tue Oct 07 10:29:02 2008
starting up 1 shared server(s) ...
starting up 1 dispatcher(s) for network address '(ADDRESS=(PARTIAL=YES)(PROTOCOL=TCP))'...
Tue Oct 07 10:29:03 2008
ALTER DATABASE MOUNT
Tue Oct 07 10:29:07 2008
Successful mount of redo thread 1, with mount id 834102255.
Tue Oct 07 10:29:07 2008
Database mounted in Exclusive Mode.
Completed: ALTER DATABASE MOUNT
Tue Oct 07 10:29:07 2008
ALTER DATABASE OPEN
Tue Oct 07 10:29:08 2008
Errors in file d:\oracle\admin\person\bdump\person_dbw0_2980.trc:
ORA-01157: cannot identify/lock data file 201 - see DBWR trace file
ORA-01110: data file 201: 'D:\ORACLE\ORADATA\PERSON\TEMP01.DBF'
ORA-27046: file size is not a multiple of logical block size
OSD-04012: 文件大小不匹配 (OS 140521472)Tue Oct 07 10:29:08 2008
Beginning crash recovery of 1 threads
Tue Oct 07 10:29:08 2008
Started first pass scan
Tue Oct 07 10:29:09 2008
Completed first pass scan
46 redo blocks read, 3 data blocks need recovery
Tue Oct 07 10:29:09 2008
Started recovery at
Thread 1: logseq 348, block 3, scn 0.0
Recovery of Online Redo Log: Thread 1 Group 3 Seq 348 Reading mem 0
Mem# 0 errs 0: D:\ORACLE\ORADATA\PERSON\REDO03.LOG
Tue Oct 07 10:29:09 2008
Ended recovery at
Thread 1: logseq 348, block 49, scn 0.303165199
3 data blocks read, 3 data blocks written, 46 redo blocks read
Crash recovery completed successfully
Tue Oct 07 10:29:09 2008
Errors in file d:\oracle\admin\person\bdump\person_dbw0_2980.trc:
ORA-01157: cannot identify/lock data file 201 - see DBWR trace file
ORA-01110: data file 201: 'D:\ORACLE\ORADATA\PERSON\TEMP01.DBF'
ORA-27046: file size is not a multiple of logical block size
OSD-04012: 文件大小不匹配 (OS 140521472)Tue Oct 07 10:29:09 2008
Errors in file d:\oracle\admin\person\bdump\person_dbw0_2980.trc:
ORA-01186: file 201 failed verification tests
ORA-01157: cannot identify/lock data file 201 - see DBWR trace file
ORA-01110: data file 201: 'D:\ORACLE\ORADATA\PERSON\TEMP01.DBF'Tue Oct 07 10:29:09 2008
File 201 not verified due to error ORA-01157
Tue Oct 07 10:29:09 2008
Thread 1 advanced to log sequence 349
Thread 1 opened at log sequence 349
Current log# 1 seq# 349 mem# 0: D:\ORACLE\ORADATA\PERSON\REDO01.LOG
Successful open of redo thread 1.
Tue Oct 07 10:29:09 2008
SMON: enabling cache recovery
SMON: enabling tx recovery
Tue Oct 07 10:29:09 2008
Database Characterset is ZHS16GBK
Tue Oct 07 10:29:09 2008
SMON: about to recover undo segment 1
SMON: undo segment 1 as needs recovery
SMON: about to recover undo segment 2
SMON: undo segment 2 as needs recovery
SMON: about to recover undo segment 3
SMON: undo segment 3 as needs recovery
SMON: about to recover undo segment 4
SMON: undo segment 4 as needs recovery
SMON: about to recover undo segment 5
SMON: undo segment 5 as needs recovery
SMON: about to recover undo segment 6
SMON: undo segment 6 as needs recovery
SMON: about to recover undo segment 7
SMON: undo segment 7 as needs recovery
SMON: about to recover undo segment 8
SMON: undo segment 8 as needs recovery
SMON: about to recover undo segment 9
SMON: undo segment 9 as needs recovery
SMON: about to recover undo segment 10
SMON: undo segment 10 as needs recovery
Tue Oct 07 10:29:11 2008
Errors in file d:\oracle\admin\person\bdump\person_smon_2892.trc:
ORA-00604: error occurred at recursive SQL level 2
ORA-00376: file 2 cannot be read at this time
ORA-01110: data file 2: 'D:\ORACLE\ORADATA\PERSON\UNDOTBS01.DBF'
SMON: undo segment 1 as needs recovery
SMON: about to recover undo segment 2
SMON: undo segment 2 as needs recovery
SMON: about to recover undo segment 3
SMON: undo segment 3 as needs recovery
SMON: about to recover undo segment 4
SMON: undo segment 4 as needs recovery
SMON: about to recover undo segment 5
SMON: undo segment 5 as needs recovery
SMON: about to recover undo segment 6
SMON: undo segment 6 as needs recovery
SMON: about to recover undo segment 7
SMON: undo segment 7 as needs recovery
SMON: about to recover undo segment 8
SMON: undo segment 8 as needs recovery
SMON: about to recover undo segment 9
SMON: undo segment 9 as needs recovery
SMON: about to recover undo segment 10
SMON: undo segment 10 as needs recovery
Tue Oct 07 10:29:12 2008
Errors in file d:\oracle\admin\person\bdump\person_smon_2892.trc:
ORA-00604: error occurred at recursive SQL level 1
ORA-00376: file 2 cannot be read at this time
ORA-01110: data file 2: 'D:\ORACLE\ORADATA\PERSON\UNDOTBS01.DBF'SMON: about to recover undo segment 1
SMON: undo segment 1 as needs recovery
SMON: about to recover undo segment 2
SMON: undo segment 2 as needs recovery
SMON: about to recover undo segment 3
SMON: undo segment 3 as needs recovery
SMON: about to recover undo segment 4
SMON: undo segment 4 as needs recovery
SMON: about to recover undo segment 5
SMON: undo segment 5 as needs recovery
SMON: about to recover undo segment 6
SMON: undo segment 6 as needs recovery
SMON: about to recover undo segment 7
SMON: undo segment 7 as needs recovery
SMON: about to recover undo segment 8
SMON: undo segment 8 as needs recovery
SMON: about to recover undo segment 9
SMON: undo segment 9 as needs recovery
SMON: about to recover undo segment 10
SMON: undo segment 10 as needs recovery
Tue Oct 07 10:29:12 2008
Errors in file d:\oracle\admin\person\bdump\person_smon_2892.trc:
ORA-00604: error occurred at recursive SQL level 1
ORA-00376: file 2 cannot be read at this time
ORA-01110: data file 2: 'D:\ORACLE\ORADATA\PERSON\UNDOTBS01.DBF'Tue Oct 07 10:29:12 2008
Errors in file d:\oracle\admin\person\udump\person_ora_1844.trc:
ORA-00604: 递归 SQL 层 2 出现错误
ORA-00376: 此时无法读取文件 2
ORA-01110: 数据文件 2: 'D:\ORACLE\ORADATA\PERSON\UNDOTBS01.DBF'Tue Oct 07 10:29:12 2008
Error 604 happened during db open, shutting down database
USER: terminating instance due to error 604
Instance terminated by USER, pid = 1844
ORA-1092 signalled during: ALTER DATABASE OPEN...
2.你当时冷备份了有什么文件?现在的恢复操作具体步骤是如何做的?
将oradata\下的遗留的控制文件,数据文件,重做文件,撤消文件等复制到新建的数据库路径中
---最后startup
重新将冷备份考过去,startup mount->alter system set undo_management=manual scope=spfile;
试试。