Corruption in redo log
Hi,
We are using Oracle 7.3 and we had a system crash. After i boot up the system and tried to open the database, i got a message that one of the redo log(current) was corrupted and hence the database cannot opened. We are in nonarchived mode and since we are using raid5, we haven't multiplexed the files. I cannot drop the log (As i cannot open the database,i cannot switch the logfile, drop and rebuild again). Now is there any methord to drop the log, and rebuild the log again? (The final option is to restore the whole system through "UFSRESTORE" since total storage of all HDD is only 16gb and then take a import of the schema).
thanks
Arun
Citizen_2 wrote:
How can i force the archiving of a redo log group 2?How could you archive a log group when you have lost all members of that group?
Have you checked out this documentation: [Recovering After the Loss of Online Redo Log Files|file://///castle/1862/Home%20Directories/Vaillancourt/Oracle%2010gR2%20Doc/backup.102/b14191/recoscen008.htm#sthref1872]
More specifically:
If the group is . . . Current
Then . . .
It is the log that the database is currently writing to.
And you should . . .
Attempt to clear the log; if impossible, then you must restore a backup and perform incomplete recovery up to the most recent available redo log.
>
HTH!
Similar Messages
-
How to corrupt a redo log ... :) ?
Hi Could anybody tell me how could (if it is possible) to corrupt a redo log ? I should like to make a test and I need such a thing to do ... So, any suggestions ?
Thanks, Paul T.open the file in any editor add some entries
if you want o coirrupt data,control anything is possible :)
But this is not a question which should not be posted.
the files in use means the database files of the running instnace cannot be edited only after shutting down you can sabotage the DB -
Logmnr/capure error b'coz of corruption of redo log block
Hi,
We all know that capture process reads the REDO entries from redo log files or archived log files. Therefore we need to ahev db in ARCHIVELOG mode.
In alert log file, I found error saying :
Creating archive destination LOG_ARCHIVE_DEST_1: 'E:\ORACLE\ORADATA\REPF\ARCHIVE\LOCATION01\1_36.ARC'
ARC0: Log corruption near block 66922 change 0 time ?
ARC0: All Archive destinations made inactive due to error 354
Fri Apr 04 12:57:44 2003
Errors in file e:\oracle\admin\repf\bdump\trishul_arc0_1724.trc:
ORA-00354: corrupt redo log block header
ORA-00353: log corruption near block 66922 change 0 time 04/04/2003 11:05:40
ORA-00312: online log 2 thread 1: 'E:\ORACLE\ORADATA\REPF\ARCHIVE\REDO02.LOG'
ORA-00312: online log 2 thread 1: 'E:\ORACLE\ORADATA\REPF\REDO02.LOG'
As a normal practice, we do have multiplexing of redo log files at diff location, but even that second copy of redo log is of no use to recover the redo log. This explains redo log could not be archived, since it can't be read. Same is true even for Logmnr process, it could not read the redo log file and it failed. Now, we have wae to recover from this situation (as far as DB is concern, not Stream Replication), since the shutdown after this error was IMMEDIATE causing checkpoing, and rollback/rollforward is not required during system startup. (No instance recovery) We can make db NOARCHIVELOG mode, drop that particular group, and create new one, and turn db to ARCHIVELOG mode This will certainly serve the purpose as far as consistency of DB is concern.
Here is a catch for Stream Replication. The redo log that got corrupted must be having few transaction which are not being archived, and each will be having corresponding SCN. Now, Capture Process read the info sequentially in order of SCN. Few transaction are now missed, and Capture process can't jump to next SCN skipping few SCN in between. So, we have to re-instantiate the objects on the another system which has no erros, and start working on it. My botheration is what will happen to those missed transaction on the another database. It's absolete loss of the data. In development I can manage that. But in real time Production stage, this is a critical situation. How to recover from this situation to get back the corrupted info from redo log ?
I have not dropped any of the log group yet. B'coz I would like to recover from this situation without LOSS of data.
Thanx, & regards,
Kamlesh Chaudhary
Content of trace files :
Dump file e:\oracle\admin\repf\bdump\trishul_arc0_1724.trc
Fri Apr 04 12:57:31 2003
ORACLE V9.2.0.2.1 - Production vsnsta=0
vsnsql=12 vsnxtr=3
Windows 2000 Version 5.0 Service Pack 2, CPU type 586
Oracle9i Enterprise Edition Release 9.2.0.2.1 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.2.0 - Production
Windows 2000 Version 5.0 Service Pack 2, CPU type 586
Instance name: trishul
Redo thread mounted by this instance: 1
Oracle process number: 16
Windows thread id: 1724, image: ORACLE.EXE
*** SESSION ID:(13.1) 2003-04-04 12:57:31.000
- Created archivelog as 'E:\ORACLE\ORADATA\REPF\ARCHIVE\LOCATION02\1_36.ARC'
- Created archivelog as 'E:\ORACLE\ORADATA\REPF\ARCHIVE\LOCATION01\1_36.ARC'
*** 2003-04-04 12:57:44.000
ARC0: All Archive destinations made inactive due to error 354
*** 2003-04-04 12:57:44.000
kcrrfail: dest:2 err:354 force:0
*** 2003-04-04 12:57:44.000
kcrrfail: dest:1 err:354 force:0
ORA-00354: corrupt redo log block header
ORA-00353: log corruption near block 66922 change 0 time 04/04/2003 11:05:40
ORA-00312: online log 2 thread 1: 'E:\ORACLE\ORADATA\REPF\ARCHIVE\REDO02.LOG'
ORA-00312: online log 2 thread 1: 'E:\ORACLE\ORADATA\REPF\REDO02.LOG'
*** 2003-04-04 12:57:44.000
ARC0: Archiving not possible: error count exceeded
ORA-16038: log 2 sequence# 36 cannot be archived
ORA-00354: corrupt redo log block header
ORA-00312: online log 2 thread 1: 'E:\ORACLE\ORADATA\REPF\REDO02.LOG'
ORA-00312: online log 2 thread 1: 'E:\ORACLE\ORADATA\REPF\ARCHIVE\REDO02.LOG'
ORA-16014: log 2 sequence# 36 not archived, no available destinations
ORA-00312: online log 2 thread 1: 'E:\ORACLE\ORADATA\REPF\REDO02.LOG'
ORA-00312: online log 2 thread 1: 'E:\ORACLE\ORADATA\REPF\ARCHIVE\REDO02.LOG'
ORA-16014: log 2 sequence# 36 not archived, no available destinations
ORA-00312: online log 2 thread 1: 'E:\ORACLE\ORADATA\REPF\REDO02.LOG'
ORA-00312: online log 2 thread 1: 'E:\ORACLE\ORADATA\REPF\ARCHIVE\REDO02.LOG'
ORA-16014: log 2 sequence# 36 not archived, no available destinations
ORA-00312: online log 2 thread 1: 'E:\ORACLE\ORADATA\REPF\REDO02.LOG'
ORA-00312: online log 2 thread 1: 'E:\ORACLE\ORADATA\REPF\ARCHIVE\REDO02.LOG'
ORA-16014: log 2 sequence# 36 not archived, no available destinations
ORA-00312: online log 2 thread 1: 'E:\ORACLE\ORADATA\REPF\REDO02.LOG'
ORA-00312: online log 2 thread 1: 'E:\ORACLE\ORADATA\REPF\ARCHIVE\REDO02.LOG'
ORA-16014: log 2 sequence# 36 not archived, no available destinations
ORA-00312: online log 2 thread 1: 'E:\ORACLE\ORADATA\REPF\REDO02.LOG'
ORA-00312: online log 2 thread 1: 'E:\ORACLE\ORADATA\REPF\ARCHIVE\REDO02.LOG
Dump file e:\oracle\admin\repf\udump\trishul_cp01_2048.trc
Fri Apr 04 12:57:27 2003
ORACLE V9.2.0.2.1 - Production vsnsta=0
vsnsql=12 vsnxtr=3
Windows 2000 Version 5.0 Service Pack 2, CPU type 586
Oracle9i Enterprise Edition Release 9.2.0.2.1 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.2.0 - Production
Windows 2000 Version 5.0 Service Pack 2, CPU type 586
Instance name: trishul
Redo thread mounted by this instance: 1
Oracle process number: 30
Windows thread id: 2048, image: ORACLE.EXE (CP01)
*** 2003-04-04 12:57:28.000
*** SESSION ID:(27.42) 2003-04-04 12:57:27.000
TLCR process death detected. Shutting down TLCR
error 1280 in STREAMS process
ORA-01280: Fatal LogMiner Error.
OPIRIP: Uncaught error 447. Error stack:
ORA-00447: fatal error in background process
ORA-01280: Fatal LogMiner Error
**********************I have the similar problem - I am using Steams environment, and have got this
"ORA-00353: log corruption near block" errors in the alert.log file
during capture the changes on the primary database, and Capture
process became aborted after that.
Was that transactions lost, or after i've started the Capture process
again the were captured and send to the target database?
Have anyone solved that problem?
Can you help me with it? -
Problem Description: alter database open
ERROR at line 1:
ORA-00368: checksum error in redo log block
ORA-00353: log corruption near block 75 change 898387731 time 11/07/2009 17:15:29
ORA-00312: online log 2 thread 1: '/opt/oracle/archivelogs/online_logs/redo02.log'
Elapsed: 00:00:01.71
SQL> select CONTROLFILE_CHANGE#, ARCHIVELOG_CHANGE# from v$database;
CONTROLFILE_CHANGE# ARCHIVELOG_CHANGE#
898387746 898387674
Elapsed: 00:00:00.00
SQL> select distinct checkpoint_change# from v$datafile_header;
CHECKPOINT_CHANGE#
898385334
Elapsed: 00:00:00.01I'm wondering if I should clear the logfile, or restore and recover control file to change# 898385334 or a higher number. Please advise. I filled out a severity 1 request, but I haven't heard back. It has been nearly 3 hours. I'm thinking I need to restore and recover the control file, but I would like some expert advice.
If it matters:
Oracle 11.1.0.6.0
the corruption was caused by a full disk (Oracle completely filled one archivelog destination while another had 600GB+ free)
the backups were done with RMAN
a full restore and recover will take considerable time (probably a week or more by the time I get the data off of tape)
I have all the archivelogs
I have a recent control file backup
and I'd be happy to post any other information.Flashback is not enabled. I think it was enabled when we were running this on a win32 platform, but it's not anymore.
I thought the logfiles were duplexed when the database was set up, but Unfortunately, logfiles aren't duplexed. It also turns out that the datafiles are fuzzy. They need recovery from the corrupted online redo log, probably past the corruption point. Once the database is online again, I'll duplex or multiplex the logfiles before letting the customer use it again.
The database is about 1.3TB. A full backup normally takes two days to complete, plus it would a few days to free up the space on the backup server. However, I have some much faster disk space now.
Oracle support has gotten back to me, but their support system is suffering from partial outages. We tried applying all the logfiles, then an open resetlogs, but it didn't work, due to datafiles being fuzzy. His recommendation was to do a full restore and recover, but that will probably take more than a week. Most of the data has been archived to tape, and I've been generating 100's of GB (in their bzip2 compressed backup form) of archivelogs working on restoring the database from a previous crash.
He said we could also try to force the database open, do a full export, create the database again, then import the data, and said it had a pretty good chance of working. Unless I come across some other option, we'll try that first, since by morning, I'll have somewhere around 1.8TB of extra disk space to hold the data. -
How to recover from one corrupted redo log file in NOARCHIVE mode?
Oracle 10.2.1.
The redo log file was corrupted and Oracle can't work.
When I use STARTUP mount, I got no error msg.
SQL> startup mount
ORACLE instance started.
Total System Global Area 1652555776 bytes
Fixed Size 1251680 bytes
Variable Size 301991584 bytes
Database Buffers 1342177280 bytes
Redo Buffers 7135232 bytes
Database mounted.
But I have some applications which are depended on Oracle can't be started.
So, I tried STARTUP open. But I got error msg.
SQL> startup open
ORACLE instance started.
Total System Global Area 1652555776 bytes
Fixed Size 1251680 bytes
Variable Size 301991584 bytes
Database Buffers 1342177280 bytes
Redo Buffers 7135232 bytes
Database mounted.
ORA-00368: checksum error in redo log block
ORA-00353: log corruption near block 497019 change 42069302 time 11/07/2007
23:43:09
ORA-00312: online log 4 thread 1:
'G:\ORACLE\PRODUCT\10.2.0\ORADATA\NMDATA\REDO04.LOG'
So, how can I restore and recover my database?
If use RMAN, how to do that?
Any help will be appreciated.
Thanks.Hi, Yingkuan,
Thanks for the helps.
Actually, I have 10 redo log files exists. All of them are here.
I tried your suggestion:
alter database clear unarchived logfile group 4;
The error msg I got is the same as before:
SQL> alter database clear unarchived logfile group 4;
alter database clear unarchived logfile group 4
ERROR at line 1:
ORA-01624: log 4 needed for crash recovery of instance nmdata (thread 1)
ORA-00312: online log 4 thread 1:
'G:\ORACLE\PRODUCT\10.2.0\ORADATA\NMDATA\REDO04.LOG'
Compared to losing all the data, it is OK for me lose some of them.
I have more than 1 TB data stored and 99.9% of them are raster images.
The loading of these data were the headache. If I can save them, I can bear the lost.
I want to grasp the last straw.
But I don't know how set the parameter: allowresetlogs_corruption
I got the error msg:
SQL> set allowresetlogs_corruption=true;
SP2-0735: unknown SET option beginning "_allow_res..."
I have run the command:
Recover database until cancel
Alter database open resetlogs
The error msg I got is the following:
SQL> recover database until cancel
ORA-00279: change 41902930 generated at 11/05/2007 22:01:48 needed for thread 1
ORA-00289: suggestion :
D:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\NMDATA\ARCHIVELOG\2007_11_09\O1_MF_
1_1274_%U_.ARC
ORA-00280: change 41902930 for thread 1 is in sequence #1274
Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
cancel
ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below
ORA-01194: file 1 needs more recovery to be consistent
ORA-01110: data file 1: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\NMDATA\SYSTEM01.DBF'
ORA-01112: media recovery not started
SQL>
From the log file, I got the following:
ALTER DATABASE RECOVER database until cancel
Fri Nov 09 00:12:48 2007
Media Recovery Start
parallel recovery started with 2 processes
ORA-279 signalled during: ALTER DATABASE RECOVER database until cancel ...
Fri Nov 09 00:13:20 2007
ALTER DATABASE RECOVER CANCEL
Fri Nov 09 00:13:21 2007
ORA-1547 signalled during: ALTER DATABASE RECOVER CANCEL ...
Fri Nov 09 00:13:21 2007
ALTER DATABASE RECOVER CANCEL
ORA-1112 signalled during: ALTER DATABASE RECOVER CANCEL ...
Thank you very much. and I am looking forward to your followup input. -
Redo log files lost in Disk Corruption/failure
DB version:10gR2
In one of our test databases, I have lost all members of a group due to disk corruption(it was a bad practise to store both members on the same filesystem)
Database is still up. We don't have a backup of the lost redo log group. Altogether we had 3 redo log groups. this is what i am going to do to fix this issue.
Step 1. Add a redo log group
ALTER DATABASE
ADD LOGFILE ('/u04/oradata/ora67tst/log4a.rdo',
'/u05/oradata/ora67tst/log4b.rdo') SIZE 15m;Step 2. Drop the corrupted redo log group
ALTER DATABASE DROP LOGFILE GROUP 2;Is this the right way to go about fixing this issue?
The documentation says that you need to make sure a redo log group is archived before you DROP it.
When i use the query
SQL>SELECT GROUP#, ARCHIVED, STATUS FROM V$LOG;
GROUP# ARC STATUS
1 YES ACTIVE
2 NO CURRENT
3 NO INACTIVE
How can i force the archiving of a redo log group 2?
Edited by: Citizen_2 on May 28, 2009 10:10 AM
Edited by: Citizen_2 on May 28, 2009 10:11 AMCitizen_2 wrote:
How can i force the archiving of a redo log group 2?How could you archive a log group when you have lost all members of that group?
Have you checked out this documentation: [Recovering After the Loss of Online Redo Log Files|file://///castle/1862/Home%20Directories/Vaillancourt/Oracle%2010gR2%20Doc/backup.102/b14191/recoscen008.htm#sthref1872]
More specifically:
If the group is . . . Current
Then . . .
It is the log that the database is currently writing to.
And you should . . .
Attempt to clear the log; if impossible, then you must restore a backup and perform incomplete recovery up to the most recent available redo log.
>
HTH! -
ORA-00354: corrupt redo log block header
Hi Guys,
Need your support to resolve one of the oracle issues,
Below are errors visible in alert.log in oracle,
ORA-16038: log 24 sequence# 660467 cannot be archived
ORA-00354: corrupt redo log block header
ORA-00312: online log 24 thread 1: '/oracle/PRD/origlogB/log_g24_m1.dbf'...
2010-10-03 07:26:12.835 20195 kcrr.c
ORA-16014: log 24 sequence# 660467 not archived, no available
destinations
Below is o/p of archive log list seems to be bit strange,
SQL> archive log list
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /oracle/PRD/saparch/PRDarch
Oldest online log sequence 660467
Next log sequence to archive 660467
Current log sequence 660576
And some more info,
SQL> SELECT GROUP#, STATUS, MEMBER FROM V$LOGFILE;
GROUP# STATUS MEMBER
28 /oracle/PRD/origlogB/log_g28_m1.dbf
28 /oracle/PRD/mirrlogB/log_g28_m2.dbf
27 /oracle/PRD/origlogA/log_g27_m1.dbf
27 /oracle/PRD/mirrlogA/log_g27_m2.dbf
26 /oracle/PRD/origlogB/log_g26_m1.dbf
26 /oracle/PRD/mirrlogB/log_g26_m2.dbf
25 /oracle/PRD/origlogA/log_g25_m1.dbf
25 /oracle/PRD/mirrlogA/log_g25_m2.dbf
24 /oracle/PRD/origlogB/log_g24_m1.dbf
24 /oracle/PRD/mirrlogB/log_g24_m2.dbf
23 /oracle/PRD/origlogA/log_g23_m1.dbf
23 /oracle/PRD/mirrlogA/log_g23_m2.dbf
22 /oracle/PRD/origlogB/log_g22_m1.dbf
22 /oracle/PRD/mirrlogB/log_g22_m2.dbf
21 /oracle/PRD/origlogA/log_g21_m1.dbf
21 /oracle/PRD/mirrlogA/log_g21_m2.dbf
16 rows selected.
SQL> SELECT GROUP#, SEQUENCE#, MEMBERS, ARCHIVED, STATUS, FIRST_CHANGE# FROM V$LOG;
GROUP# SEQUENCE# MEMBERS ARC STATUS FIRST_CHANGE#
21 660571 2 NO INACTIVE 2.9116E+10
22 660572 2 NO INACTIVE 2.9116E+10
23 660570 2 NO INACTIVE 2.9116E+10
24 660467 2 NO INACTIVE 2.9114E+10
25 660573 2 NO ACTIVE 2.9116E+10
26 660574 2 NO CURRENT 2.9116E+10
27 660568 2 NO INACTIVE 2.9116E+10
28 660569 2 NO INACTIVE 2.9116E+10
8 rows selected.
All file exists but still facing issue, no backup is running
Regards,
YashHi,
Instead of the logfile name, try the command with the logfile integer as mentioned below.
alter database clear unarchived logfile group <integer>;
You can get the logfile integer using the view, v$log.
select GROUP#,MEMBERS,STATUS from v$log;
The value for the parameter GROUP# is the logfile integer.
Hope this helps.
Regards,
Varadharajan M -
Corruption of archived logs after redo resizing - URGENT
Hello all,
We have a RAC 9i 2-node DB, running on RHEL 3 machines.
We resized our redo logs from 100M to 1G to avoid "Can not allocate log, archival required" messages.
The operation was successful, but now we are facing problems with the ext3 filesystem holding the archived logs.
Each node has its own arc location, mounted only once.
When we run "ls" in the arc destination, we get "ls: Input/output error" messages.
RMAN complains also about corrupted arcvhived logs.
The day before Yesterday we reformatted one arc destination, and today the messages appeared in the other one.
Do you have any suggestion?
JonathanDid the problem occur right after increasing the log size? Then the first thing to do would be to decrease the log size, but add more log groups to fix the "Can not allocate..." problem.
If "ls" doesn't work, your file system is stuffed.Reformat the archive dest and do simple file copies to verify the integrity, before putting the archive logs back on.
That's just for starters... -
How to recover from corrupt redo log file in non-archived 10g db
Hello Friends,
I don't know much about recovering databases. I have a 10.2.0.2 database with corrupt redo file and I am getting following error on startup. (db is non archived and no backup) Thanks very much for any help.
Database mounted.
ORA-00368: checksum error in redo log block
ORA-00353: log corruption near block 6464 change 9979452011066 time 06/27/2009
15:46:47
ORA-00312: online log 1 thread 1: '/dbfiles/data_files/log3.dbf'
====
SQL> select Group#,members,status from v$log;
GROUP# MEMBERS STATUS
1 1 CURRENT
3 1 UNUSED
2 1 INACTIVE
==
I have tried this so far but no luck
I have tried following commands but no help.
SQL> ALTER DATABASE CLEAR UNARCHIVED LOGFILE GROUP 3;
Database altered.
SQL> alter database open resetlogs;
alter database open resetlogs
ERROR at line 1:
ORA-01139: RESETLOGS option only valid after an incomplete database recovery
SQL> alter database open;
alter database open
ERROR at line 1:
ORA-00368: checksum error in redo log block
ORA-00353: log corruption near block 6464 change 9979452011066 time 06/27/2009
15:46:47
ORA-00312: online log 1 thread 1: '/dbfiles/data_files/log3.dbf'user652965 wrote:
Thanks very much for your help guys. I appreciate it. unfortunately none of these commands worked for me. I kept getting error on clearing logs that redo log is needed to perform recovery so it can't be cleared. So I ended up restoring from earlier snapshot of my db volume. Database is now open.
Thanks again for your input.And now, as a follow-up, at a minimum you should make sure that all redo log groups have at least 3 members. Then, if you lose a single redo log file, all you have to do is shutdown the db and copy one of the good members (of the same group as the lost member) over the lost member.
And as an additional follow-up, if you value your data you will run in archivelog mode and take regular backups of the database and archivelogs. If you fail to do this you are saying that your data is not worth saving. -
Corrupt change description in redo log
i am running oracle91 on sunos sun4u
it runs on Noarchivelog mode
the server started restarting itself today about 4 times
the last restart,to start the database i noticed that the database only mounted without opening, showing the following error:
ORA-00399: Corrupt change description in redo log
ORA-00353: log corruption near block 1576 change 18906724807 time 04/02/2008 16:30:14
ORA-00312: Online log 1 thread 1: '/data1/oradata/<sid>/redo01.log
should i do log switch and delete redo01.log and then add another redo01.log.
Regards
pls it is urgent, i need all of ur helpContact Oracle support immediately. They are your only real hope because you will need some customized approach to recovery based on your specific situation.
I do hope you are prepared to loose data or have a logically corrupt database, however.
Good Luck -
ORA-00399: corrupt change description in redo log
Hello!
I have big problem on database startup:
ORA-00283: recovery session canceled due to errors
ORA-00399: corrupt change description in redo log
ORA-00353: log corruption near block 12044 change 465202853 time 12/09/2008
22:00:20
ORA-00312: online log 4 thread 1: '/oradata/orcl/temp/redo04.log'
I have only one member in each redolog group.
Have I any chance to recover database?Recreating a controlfile does not help in case of a corrupt logfile. Issue
'select group#,status,archived,sequence#,first_change# from v$log;' to get the status of the corrupted logfile. If 'status' = INACTIVE you are lucky, you can clear the group:
alter database clear <unarchived> logfile group n; (use 'unarchived' when 'archived' shows 'NO') .
If 'status' = ACTIVE try 'alter database checkpoint;', if this command executes successfully, logfile gets status INACTIVE and again you can clear the logfile, if not you have to handle the logfile as CURRENT.
If 'status' = CURRENT you must do an incomplete recovery up to the latest usable SCN:
restore database until scn <first_change#_of_current_logfile>;
recover database until scn <first_change#_of_current_logfile>;
alter database open resetlogs;
Werner -
Lost seq of redo log due to corruption and cannot recover database.
Hi!
This db I am working on is a test database running 10.2.0.3 on OEL5. Unfortunately due to some human error, we lost the redo log sequence 1_28_xxxxxx.redo. As this was a non-critical db, we didn't plan any backups for the db... and now whenever I try to open the db I get the error:
SQL> alter database open;
alter database open
ERROR at line 1:
ORA-01589: must use RESETLOGS or NORESETLOGS option for database open
SQL> alter database open resetlogs;
alter database open resetlogs
ERROR at line 1:
ORA-01194: file 1 needs more recovery to be consistent
ORA-01110: data file 1: '/opt/app/oracle/oradata/tadb1/system01.dbf'
SQL> recover until cancel
ORA-00279: change 510956 generated at 08/31/2010 22:00:17 needed for thread 1
ORA-00289: suggestion :
/opt/app/oracle/oradata/tadb1/archive/1_28_728336713.dbf
ORA-00280: change 510956 for thread 1 is in sequence #28
SQL> recover database until time '31-AUG-2010 22:00:00';
ORA-00283: recovery session canceled due to errors
ORA-00314: log 1 of thread 1, expected sequence# 28 doesn't match 0
ORA-00312: online log 1 thread 1: '/opt/app/oracle/oradata/tadb1/redo01.log'
Is there a way to open the database!?
Thanks,
AB007Sorry for the late response guys... had called it a night earlier... well, I tried your suggestion... but still, the database can't recover -
SQL> recover database using backup controlfile until cancel;
ORA-00279: change 510958 generated at 09/02/2010 23:56:37 needed for thread 1
ORA-00289: suggestion : /opt/app/oracle/oradata/tadb1/archive/1_1_728697397.dbf
ORA-00280: change 510958 for thread 1 is in sequence #1
Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
CANCEL
ORA-01547: warning: RECOVER succeeded but OPEN RESETLOGS would get error below
ORA-01194: file 1 needs more recovery to be consistent
ORA-01110: data file 1: '/opt/app/oracle/oradata/tadb1/system01.dbf'
ORA-01112: media recovery not started
SQL> alter database open resetlogs;
alter database open resetlogs
ERROR at line 1:
ORA-01092: ORACLE instance terminated. Disconnection forced
ALERT LOG
ALTER DATABASE RECOVER database using backup controlfile until cancel
Fri Sep 3 10:14:22 2010
Media Recovery Start
WARNING! Recovering data file 1 from a fuzzy file. If not the current file
it might be an online backup taken without entering the begin backup command.
WARNING! Recovering data file 2 from a fuzzy file. If not the current file
it might be an online backup taken without entering the begin backup command.
WARNING! Recovering data file 3 from a fuzzy file. If not the current file
it might be an online backup taken without entering the begin backup command.
WARNING! Recovering data file 4 from a fuzzy file. If not the current file
it might be an online backup taken without entering the begin backup command.
parallel recovery started with 2 processes
ORA-279 signalled during: ALTER DATABASE RECOVER database using backup controlfile until cancel ...
Fri Sep 3 10:14:25 2010
ALTER DATABASE RECOVER CANCEL
ORA-1547 signalled during: ALTER DATABASE RECOVER CANCEL ...
Fri Sep 3 10:14:26 2010
ALTER DATABASE RECOVER CANCEL
ORA-1112 signalled during: ALTER DATABASE RECOVER CANCEL ...
Fri Sep 3 10:14:43 2010
alter database open resetlogs
Fri Sep 3 10:14:43 2010
RESETLOGS is being done without consistancy checks. This may result
in a corrupted database. The database should be recreated.
RESETLOGS after incomplete recovery UNTIL CHANGE 510958
Resetting resetlogs activation ID 2129258410 (0x7ee9e7aa)
Online log /opt/app/oracle/oradata/tadb1/redo02.log: Thread 1 Group 2 was previously cleared
Online log /opt/app/oracle/oradata/tadb1/redo03.log: Thread 1 Group 3 was previously cleared
Fri Sep 3 10:14:45 2010
Setting recovery target incarnation to 3
Fri Sep 3 10:14:45 2010
Assigning activation ID 2129271722 (0x7eea1baa)
Thread 1 opened at log sequence 1
Current log# 1 seq# 1 mem# 0: /opt/app/oracle/oradata/tadb1/redo01.log
Successful open of redo thread 1
Fri Sep 3 10:14:45 2010
MTTR advisory is disabled because FAST_START_MTTR_TARGET is not set
Fri Sep 3 10:14:45 2010
SMON: enabling cache recovery
Fri Sep 3 10:14:45 2010
Errors in file /opt/app/oracle/admin/tadb1/udump/tadb1_ora_5949.trc:
ORA-00600: internal error code, arguments: [4000], [6], [], [], [], [], [], []
Fri Sep 3 10:14:45 2010
Errors in file /opt/app/oracle/admin/tadb1/udump/tadb1_ora_5949.trc:
ORA-00704: bootstrap process failure
ORA-00704: bootstrap process failure
ORA-00600: internal error code, arguments: [4000], [6], [], [], [], [], [], []
Fri Sep 3 10:14:45 2010
Error 704 happened during db open, shutting down database
USER: terminating instance due to error 704
Instance terminated by USER, pid = 5949
ORA-1092 signalled during: alter database open resetlogs... -
ORA-00354: corrupt redo log block header..urgent
Hi All,
i am running into an issue when trying to recover a datafile.
1). Logs are being applied to the datafile to recover but RMAN is throwing this error:
ORA-00283: recovery session canceled due to errors
RMAN-11003: failure during parse/execution of SQL statement: alter database reco
ver logfile 'H:\ORACLE_ARCHIVE_LOGS\RBS\ARCHIVELOG\2012_04_23\O1_MF_1_13174_7SC4
P56W_.ARC'
ORA-00283: recovery session canceled due to errors
ORA-00354: corrupt redo log block header
ORA-00353: log corruption near block 32768 change 6715041179 time 04/23/2012 13:
33:51
ORA-00334: archived log: 'H:\ORACLE_ARCHIVE_LOGS\RBS\ARCHIVELOG\2012_04_23\O1_MF
_1_13174_7SC4P56W_.ARC'
thanks in advancebcm@bcm-laptop:~$ oerr ora 353
00353, 00000, "log corruption near block %s change %s time %s"
// *Cause: Some type of redo log corruption has been discovered. This error
// describes the location of the corruption. Accompanying errors
// describe the type of corruption.
// *Action: Do recovery with a good version of the log or do incomplete
// recovery up to the indicated change or time.
bcm@bcm-laptop:~$ oerr ora 354
00354, 00000, "corrupt redo log block header"
// *Cause: The block header on the redo block indicated by the accompanying
// error, is not reasonable.
// *Action: Do recovery with a good version of the log or do time based
// recovery up to the indicated time. If this happens when archiving,
// archiving of the problem log can be skipped by clearing the log
// with the UNARCHIVED option. This must be followed by a backup of
// every datafile to insure recoverability of the database. -
Suppose the current online redo log is corrupted, is there any way to make database functional other than doing incomplete recovery?
Oracle documentation says we have to do incomplete recovery. Is Cancel based Incomplete recovery the only option.
If this database is also the primary database for A physical standby database how to synchronize the Standby database with Primary? Since we would be opening Primary with Resetlogs....Incomplete Recovery upto the last (archive) redo log before the current one IS the only option.
Your current redo log would have some transactions in it. Also, the datafiles would have had some dirty blocks written to disk by DBWR. Therefore, the datafiles would be inconsistent until and unless you can apply the redo that goes with those changes. Since the redo cannot be applied from the corrupt file, the datafiles themselves must be reverted to a prior image -- upto the last redo that can be applied.
As for the standby, if you have Flashback configured, you can Flashback the Standby to the point 2 SCNs before the Primary Resetlogs.
See DataGuard Scenario 12.5 at
http://download.oracle.com/docs/cd/B19306_01/server.102/b14239/scenarios.htm#i1049616
Else use Scenario 8.4 at
http://download.oracle.com/docs/cd/B19306_01/server.102/b14239/manage_ps.htm#i1026480
Hemant K Chitale
http://hemantoracledba.blogspot.com
Edited by: Hemant K Chitale on Jul 22, 2009 12:13 AM -
How to overcome corrupt redo log block header
friends, can you tell me any utilities or packages using which i can clean my redo log . Iam encountering this error during recovery of my database
NandJafar,
SQL> recover database using backup controlfile;
ORA-00279: change 166327733 generated at 04/03/2008 12:06:36 needed for thread
1
ORA-00289: suggestion : C:\COLD\ARCHIVES\ARC17966_0616830416.001
ORA-00280: change 166327733 for thread 1 is in sequence #17966
Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
C:\STREDO09.LOG
ORA-00283: recovery session canceled due to errors
ORA-00354: corrupt redo log block header
ORA-00353: log corruption near block 4044 change 166329643 time 04/03/2008
12:46:45
ORA-00334: archived log: 'C:\STREDO09.LOG'
ORA-01112: media recovery not started
The stredo09.log is the standby redo log. My production server crashed.....Unfortunately the physical standby was also down..before main crashed..(power failure). Iam not able to open the production server.
Maybe you are looking for
-
How to use my Time Capsule to share pictures on between Macs
Hi, We have two MacBooks at home and a wireless network w. a Time Capsule. We would like to be able to share photos via the Time Capsule. Is this possible and if so how? Best wishes, Søren
-
Production Order : COGI Clarifications
Hi Team, I am having some clarifications on COGI transaction processing. 1. Is the production order can be settled (production order settlement) if the error exists in COGI against the production order? 2. Sometimes, user deletes the entry in the COG
-
Creating a "West Wing Effect"?
this really got nothing to do with FCP. But I'll see if I can get any help here anyway! I've been watching West Wing, and I'm very impressed with the glow they create around all objects that are white when they're in the "west wing". For example, whi
-
Missing Live Video From Evanescence
Greetings, I just purchased Evanescence's album Fallen. During the download of the album it showed that it was downloading the video of the band performing Bring Me Back To Life live. I cannot locate this video anywhere. I do not have a video iPod, b
-
Lost database (I am a recruit.please help!)
oracle 9.2 on w2000 advanced server pack3. I created 3 databases---myoracle,test,oemrep. run enterprise manager console. login with 'single mode'(s):I can find all 3 databases. (sorry, I am using a chinese version, so I do not know this term in Engli