Corruption in a log file
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.
Similar Messages
-
Version Cue Log Files Corrupted.
Address:
Version Cue CS2 > config > configuration.
I'm trying to create a back up of my hard drive, as a precaution whilst running an Adobe Clean script but the back up software is finding corrupt Version Cue log files.
Are these files critical?
Is it okay for me to delete one or two if they have become corrupted?This is why I don't use Version Cue.
But you will get much better help in the Version Cue Forum http://www.adobeforums.com/webx/.2ccdf13f/ -
Slapd database environment corrupt; wrong log files removed
When our OSX 10.4.10 server boots up, slapd crashes out with a fatal error, followed by an unsuccessful attempt to recover the database. This is from the log:
Sep 22 22:41:49 xyz123 slapd[428]: @(#) $OpenLDAP: slapd 2.2.19 $\n
Sep 22 22:41:49 xyz123 slapd[428]: bdbbackinitialize: Sleepycat Software: Berkeley DB 4.2.52: (December 3, 2003)\n
Sep 22 22:41:49 xyz123 slapd[428]: bdbdbinit: Initializing BDB database\n
Sep 22 22:41:49 xyz123 slapd[428]: bdb(dc=xyz123,dc=mydomain,dc=com): DBENV->logflush: LSN of 3/2806706 past current end-of-log of 1/2458\n
Sep 22 22:41:49 xyz123 slapd[428]: bdb(dc=xyz123,dc=mydomain,dc=com): Database environment corrupt; the wrong log files may have been removed or incompatible database files imported from another environment\n
Sep 22 22:41:49 xyz123 slapd[428]: bdb(dc=xyz123,dc=mydomain,dc=com): gidNumber.bdb: unable to flush page: 0\n
Sep 22 22:41:49 xyz123 slapd[428]: bdb(dc=xyz123,dc=mydomain,dc=com): txn_checkpoint: failed to flush the buffer cache Invalid argument\n
Sep 22 22:41:49 xyz123 slapd[428]: bdb(dc=xyz123,dc=mydomain,dc=com): PANIC: Invalid argument\n
Sep 22 22:41:50 xyz123 slapd[428]: bdbdbopen: dbenv_open failed: DB_RUNRECOVERY: Fatal error, run database recovery (-30978)\n
Sep 22 22:41:50 xyz123 slapd[428]: backend_startup: bidbopen failed! (-30978)\n
Sep 22 22:41:50 xyz123 slapd[428]: bdb(dc=xyz123,dc=mydomain,dc=com): DBENV->lockid interface requires an environment configured for the locking subsystem\n
Sep 22 22:41:50 xyz123 slapd[428]: bdb(dc=xyz123,dc=mydomain,dc=com): DBENV->lockid interface requires an environment configured for the locking subsystem\n
Sep 22 22:41:50 xyz123 slapd[428]: bdb(dc=xyz123,dc=mydomain,dc=com): DBENV->lockid interface requires an environment configured for the locking subsystem\n
Sep 22 22:41:50 xyz123 slapd[428]: bdb(dc=xyz123,dc=mydomain,dc=com): DBENV->lockid interface requires an environment configured for the locking subsystem\n
Sep 22 22:41:50 xyz123 slapd[428]: bdb(dc=xyz123,dc=mydomain,dc=com): DBENV->lock_idfree interface requires an environment configured for the locking subsystem\n
Sep 22 22:41:50 xyz123 slapd[428]: bdb(dc=xyz123,dc=mydomain,dc=com): txn_checkpoint interface requires an environment configured for the transaction subsystem\n
Sep 22 22:41:50 xyz123 slapd[428]: bdbdbdestroy: txn_checkpoint failed: Invalid argument (22)\n
Sep 22 22:41:50 xyz123 slapd[428]: slapd stopped.\n
We are able to get it running by deleting the log file at /var/db/openldap/openldap-data/log.0000000001 and then rebooting. Thereafter the slapd.log complains:
Sep 23 20:30:30 xyz123 slapd[58]: bdb(dc=xyz123,dc=dc=mydomain,dc=com): DBENV->logflush: LSN of 1/467990 past current end-of-log of 1/226654\n
Sep 23 20:30:30 xyz123 slapd[58]: bdb(dc=xyz123,dc=dc=mydomain,dc=com): Database environment corrupt; the wrong log files may have been removed or incompatible database files imported from another environment\n
Sep 23 20:30:30 xyz123 slapd[58]: bdb(dc=xyz123,dc=dc=mydomain,dc=com): sn.bdb: unable to flush page: 0\n
We've tried running db_recover -c but that hasn't worked, or at least, we perhaps didn't do it right. We don't have a backup database that predates the existence of this problem.
I'd appreciate if anyone has help or could point us to a resource explaining what to do to get our slapd working right.thank you for giving us a test program. This helped tremendously to fully understand what you are doing. In 5.3 we fixed a bug dealing with the way log files are archived in an HA environment. What you are running into is the consequences of that bug fix. In the test program you are using DB_INIT_REP. This is the key to use that you want an HA environment. With HA, there is a master and some number of read only clients. By default we treat the initiating database as the master. This is what is happening in our case. In an HA (replicated) environment, we cannot archive log files until we can be assured that the clients have applied the contents of that log file. Our belief is that you are not really running in an HA environment and you do not need the DB_INIT_REP flag. In our initial testing where we said it worked for us, this was because we did not use the DB_INIT_REP flag, as there was no mention of replication being needed in the post.
Recommendation: Please remove the use of the DB_INIT_REP flag or properly set up an HA environment (details in our docs).
thanks
mike -
Transaction log shipping restore with standby failed: log file corrupted
Restore transaction log failed and I get this error: for only 04 no of database in same SQL server, renaming are working fine.
Date
9/10/2014 6:09:27 AM
Log
Job History (LSRestore_DATA_TPSSYS)
Step ID
1
Server
DATADR
Job Name
LSRestore_DATA_TPSSYS
Step Name
Log shipping restore log job step.
Duration
00:00:03
Sql Severity 0
Sql Message ID 0
Operator Emailed
Operator Net sent
Operator Paged
Retries Attempted
0
Message
2014-09-10 06:09:30.37 *** Error: Could not apply log backup file '\\10.227.32.27\LsSecondery\TPSSYS\TPSSYS_20140910003724.trn' to secondary database 'TPSSYS'.(Microsoft.SqlServer.Management.LogShipping) ***
2014-09-10 06:09:30.37 *** Error: An error occurred while processing the log for database 'TPSSYS'.
If possible, restore from backup. If a backup is not available, it might be necessary to rebuild the log.
An error occurred during recovery, preventing the database 'TPSSYS' (13:0) from restarting. Diagnose the recovery errors and fix them, or restore from a known good backup. If errors are not corrected or expected, contact Technical Support.
RESTORE LOG is terminating abnormally.
Processed 0 pages for database 'TPSSYS', file 'TPSSYS' on file 1.
Processed 1 pages for database 'TPSSYS', file 'TPSSYS_log' on file 1.(.Net SqlClient Data Provider) ***
2014-09-10 06:09:30.37 *** Error: Could not log history/error message.(Microsoft.SqlServer.Management.LogShipping) ***
2014-09-10 06:09:30.37 *** Error: ExecuteNonQuery requires an open and available Connection. The connection's current state is closed.(System.Data) ***
2014-09-10 06:09:30.37 Skipping log backup file '\\10.227.32.27\LsSecondery\TPSSYS\TPSSYS_20140910003724.trn' for secondary database 'TPSSYS' because the file could not be verified.
2014-09-10 06:09:30.37 *** Error: Could not log history/error message.(Microsoft.SqlServer.Management.LogShipping) ***
2014-09-10 06:09:30.37 *** Error: ExecuteNonQuery requires an open and available Connection. The connection's current state is closed.(System.Data) ***
2014-09-10 06:09:30.37 *** Error: An error occurred restoring the database access mode.(Microsoft.SqlServer.Management.LogShipping) ***
2014-09-10 06:09:30.37 *** Error: ExecuteScalar requires an open and available Connection. The connection's current state is closed.(System.Data) ***
2014-09-10 06:09:30.37 *** Error: Could not log history/error message.(Microsoft.SqlServer.Management.LogShipping) ***
2014-09-10 06:09:30.37 *** Error: ExecuteNonQuery requires an open and available Connection. The connection's current state is closed.(System.Data) ***
2014-09-10 06:09:30.37 *** Error: An error occurred restoring the database access mode.(Microsoft.SqlServer.Management.LogShipping) ***
2014-09-10 06:09:30.37 *** Error: ExecuteScalar requires an open and available Connection. The connection's current state is closed.(System.Data) ***
2014-09-10 06:09:30.37 *** Error: Could not log history/error message.(Microsoft.SqlServer.Management.LogShipping) ***
2014-09-10 06:09:30.37 *** Error: ExecuteNonQuery requires an open and available Connection. The connection's current state is closed.(System.Data) ***
2014-09-10 06:09:30.37 Deleting old log backup files. Primary Database: 'TPSSYS'
2014-09-10 06:09:30.37 *** Error: Could not log history/error message.(Microsoft.SqlServer.Management.LogShipping) ***
2014-09-10 06:09:30.37 *** Error: ExecuteNonQuery requires an open and available Connection. The connection's current state is closed.(System.Data) ***
2014-09-10 06:09:30.37 The restore operation completed with errors. Secondary ID: 'dd25135a-24dd-4642-83d2-424f29e9e04c'
2014-09-10 06:09:30.37 *** Error: Could not log history/error message.(Microsoft.SqlServer.Management.LogShipping) ***
2014-09-10 06:09:30.37 *** Error: ExecuteNonQuery requires an open and available Connection. The connection's current state is closed.(System.Data) ***
2014-09-10 06:09:30.37 *** Error: Could not cleanup history.(Microsoft.SqlServer.Management.LogShipping) ***
2014-09-10 06:09:30.37 *** Error: ExecuteNonQuery requires an open and available Connection. The connection's current state is closed.(System.Data) ***
2014-09-10 06:09:30.38 ----- END OF TRANSACTION LOG RESTORE
Exit Status: 1 (Error)I Have restore the database to new server and check with new log shipping but its give this same error again, If it is network issue i believe issue need to occur on every database in that server with log shipping configuration
error :
Message
2014-09-12 10:50:03.18 *** Error: Could not apply log backup file 'E:\LsSecondery\EAPDAT\EAPDAT_20140912051511.trn' to secondary database 'EAPDAT'.(Microsoft.SqlServer.Management.LogShipping) ***
2014-09-12 10:50:03.18 *** Error: An error occurred while processing the log for database 'EAPDAT'. If possible, restore from backup. If a backup is not available, it might be necessary to rebuild the log.
An error occurred during recovery, preventing the database 'EAPDAT' (8:0) from restarting. Diagnose the recovery errors and fix them, or restore from a known good backup. If errors are not corrected or expected, contact Technical Support.
RESTORE LOG is terminating abnormally.
can this happened due to data base or log file corruption, if so how can i check on that to verify the issue
Its not necessary if the issue is with network it would happen every day IMO it basically happens when load on network is high and you transfer log file which is big in size.
As per message database engine was not able to restore log backup and said that you must rebuild log because it did not find out log to be consistent. From here it seems log corruption.
Is it the same log file you restored ? if that is the case since log file was corrupt it would ofcourse give error on wehatever server you restore.
Can you try creating logshipping on new server by taking fresh full and log backup and see if you get issue there as well. I would also say you to raise case with Microsoft and let them tell what is root cause to this problem
Please mark this reply as answer if it solved your issue or vote as helpful if it helped so that other forum members can benefit from it
My Technet Articles -
Corrupt LOG File MaxDB 7.5 (Netweaver 04)
At the Installation the LOG went full. LOG-Mode = SINGLE.
Then I have added a new LOG File. Nothing happens. After rebooting the maschine,
the database doesnt come up, in krnldiag there is following:
2004-11-14 22:46:30 7579 11000 vattach '/sapdb/XI3/sapdata/DISKD0001' devno 1 T58 succeeded
2004-11-14 22:46:30 7520 11597 IO Open '/sapdb/XI3/saplog/DISKL001' successfull, fd: 16
2004-11-14 22:46:30 7633 12821 TASKING Thread 7633 starting
2004-11-14 22:46:30 7632 11565 startup DEVi started
2004-11-14 22:46:30 7520 11597 IO Open '/sapdb/XI3/saplog/DISKL001' successfull, fd: 17
2004-11-14 22:46:30 7634 12821 TASKING Thread 7634 starting
2004-11-14 22:46:30 7633 11565 startup DEVi started
2004-11-14 22:46:30 7579 11000 vattach '/sapdb/XI3/saplog/DISKL001' devno 2 T58 succeeded
2004-11-14 22:46:30 7520 11597 IO Open '/data2/sapdb/XI3/DISKL002' successfull, fd: 19
2004-11-14 22:46:30 7635 12821 TASKING Thread 7635 starting
2004-11-14 22:46:30 7634 11565 startup DEVi started
2004-11-14 22:46:30 7520 11597 IO Open '/data2/sapdb/XI3/DISKL002' successfull, fd: 20
2004-11-14 22:46:30 7636 12821 TASKING Thread 7636 starting
2004-11-14 22:46:30 7635 11565 startup DEVi started
2004-11-14 22:46:30 7579 11000 vattach '/data2/sapdb/XI3/DISKL002' devno 3 T58 succeeded
2004-11-14 22:46:30 7579 ERR 30 IOMan Log volume configuration corrupted: Linkage missmatch between volume 1 and 2
2004-11-14 22:46:30 7579 11000 vdetach '/sapdb/XI3/sapdata/DISKD0001' devno 1 T58
2004-11-14 22:46:30 7520 12822 TASKING Thread 7631 joining
2004-11-14 22:46:30 7636 11565 startup DEVi started
2004-11-14 22:46:30 7631 11566 stop DEVi stopped
2004-11-14 22:46:30 7520 12822 TASKING Thread 7632 joining
2004-11-14 22:46:30 7579 ERR 16 Admin RestartFilesystem failed with 'I/O error'
2004-11-14 22:46:30 7579 ERR 8 Admin ERROR 'disk_not_accessibl' CAUSED EMERGENCY SHUTDOWN
2004-11-14 22:46:30 7579 12696 DBSTATE Change DbState to 'SHUTDOWN'(25)
Is there any way to delete the corrupt LOG files in order to add new one? The data file is ok.
Thanks
HelmutThread was also opened on the Mailing list:
Here is the answer
Hi,
in most situations an "add log volume" does not solve
a log full situation, because the added logvolume is
accessible first at the moment, when the write position
on the log is at the end of the old logvolume.
If a LOGFULL occurs, the save log!
All "parts" of the LogVolume are numbered and each one
has stored the identifying number of it's predecessor and
it successor in it's header-page. The message
"Linkage missmatch between volume"
means, that these values does not match any more.
Did you somehow changed the contents of this file/device?
If so: can you revert the change? Then the restart should
work again. do a logbackup and your database will run again.
If this doesn't work for you, you could patch the
header pages of the logvolume (I assume you do not really
want this).
Another way to solve the situation is to do a data backup
in admin-mode, reinstall the database and recover the
databackup, because the removal of a logvolume is not
supported.
kind regards, Martin -
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. -
Log file corrupt and can't open the database.
I use Replication Manager to manage my Replication; and there is only one site currently in my application.
I killed the App process with signal -9. (ie. $ kill -9 appID).
Then I try to restart the App, but the event_callback function got a PANIC event when to open the envirment.
The open flag is:
flags = DB_CREATE | DB_INIT_LOCK | DB_INIT_LOG | DB_INIT_MPOOL |
DB_INIT_REP | DB_INIT_TXN | DB_RECOVER | DB_THREAD;
ret = dbenv->open(dbenv, path, flags | DB_SYSTEM_MEM, 0);
What's the reason cause this problem?
How can recover it ?
The logs list as below:
[D 11/19 09:44] dbpf using shm key: 977431433
[E 11/19 09:44] [src/io/dbpf-mgmt.c, 400]
[E 11/19 09:44] yuga: DB_LOGC->get: LSN 1/9776: invalid log record header
[E 11/19 09:44] yuga: Log file corrupt at LSN: [1][9906]
[E 11/19 09:44] yuga: PANIC: Invalid argument
[E 11/19 09:44] [src/io/dbpf-mgmt.c] Rep EventGot a panic: Invalid argument (22)
Edited by: dbnicker on Nov 18, 2010 6:08 PMFirst, what version of Berkeley DB are you running and on what system?
The error indicates something amiss in the log. The LSN values are quite
small. Can you run 'db_printlog -N -h <env path>' and post the log
contents?
If you are using BDB 5.0 or later, can you also post the contents of
the __db.rep.diag00 file in the environment home directory? Thanks.
Sue LoVerso
Oracle -
Recovery is repairing media corrupt block x of file x in standby alert log
Hi,
oracle version:8.1.7.0.0
os version :solaris 5.9
we have oracle 8i primary and standby database. i am getting erorr in alert log file:
Thu Aug 28 22:48:12 2008
Media Recovery Log /oratranslog/arch_1_1827391.arc
Thu Aug 28 22:50:42 2008
Media Recovery Log /oratranslog/arch_1_1827392.arc
bash-2.05$ tail -f alert_pindb.log
Recovery is repairing media corrupt block 991886 of file 179
Recovery is repairing media corrupt block 70257 of file 184
Recovery is repairing media corrupt block 70258 of file 184
Recovery is repairing media corrupt block 70259 of file 184
Recovery is repairing media corrupt block 70260 of file 184
Recovery is repairing media corrupt block 70261 of file 184
Thu Aug 28 22:48:12 2008
Media Recovery Log /oratranslog/arch_1_1827391.arc
Thu Aug 28 22:50:42 2008
Media Recovery Log /oratranslog/arch_1_1827392.arc
Recovery is repairing media corrupt block 500027 of file 181
Recovery is repairing media corrupt block 500028 of file 181
Recovery is repairing media corrupt block 500029 of file 181
Recovery is repairing media corrupt block 500030 of file 181
Recovery is repairing media corrupt block 500031 of file 181
Recovery is repairing media corrupt block 991837 of file 179
Recovery is repairing media corrupt block 991838 of file 179
how i can resolve this.
[pre]
Thanks
Prakash
Edited by: user612485 on Aug 28, 2008 10:53 AMDear satish kandi,
recently we have created index for one table with nologgign option, i think for that reason i am getting that error.
if i run dbv utility on the files which are shown in alert log file i am getting the following results.
bash-2.05$ dbv file=/oracle15/oradata/pindb/pinx055.dbf blocksize=4096
DBVERIFY: Release 8.1.7.0.0 - Production on Fri Aug 29 12:18:27 2008
(c) Copyright 2000 Oracle Corporation. All rights reserved.
DBVERIFY - Verification starting : FILE = /oracle15/oradata/pindb/pinx053.dbf
Block Checking: DBA = 751593895, Block Type =
Found block already marked corrupted
Block Checking: DBA = 751593896, Block Type =
.DBVERIFY - Verification complete
Total Pages Examined : 1048576
Total Pages Processed (Data) : 0
Total Pages Failing (Data) : 0
Total Pages Processed (Index): 1036952
Total Pages Failing (Index): 0
Total Pages Processed (Other): 7342
Total Pages Empty : 4282
Total Pages Marked Corrupt : 0
Total Pages Influx : 0
bash-2.05$ dbv file=/oracle15/oradata/pindb/pinx053.dbf blocksize=4096
DBVERIFY: Release 8.1.7.0.0 - Production on Fri Aug 29 12:23:12 2008
(c) Copyright 2000 Oracle Corporation. All rights reserved.
DBVERIFY - Verification starting : FILE = /oracle15/oradata/pindb/pinx054.dbf
Block Checking: DBA = 759492966, Block Type =
Found block already marked corrupted
Block Checking: DBA = 759492967, Block Type =
Found block already marked corrupted
Block Checking: DBA = 759492968, Block Type =
.DBVERIFY - Verification complete
Total Pages Examined : 1048576
Total Pages Processed (Data) : 0
Total Pages Failing (Data) : 0
Total Pages Processed (Index): 585068
Total Pages Failing (Index): 0
Total Pages Processed (Other): 8709
Total Pages Empty : 454799
Total Pages Marked Corrupt : 0
Total Pages Influx : 0
bash-2.05$ dbv file=/oracle15/oradata/pindb/pinx054.dbf blocksize=4096
DBVERIFY: Release 8.1.7.0.0 - Production on Fri Aug 29 12:32:28 2008
(c) Copyright 2000 Oracle Corporation. All rights reserved.
DBVERIFY - Verification starting : FILE = /oracle15/oradata/pindb/pinx055.dbf
Block Checking: DBA = 771822208, Block Type =
Found block already marked corrupted
Block Checking: DBA = 771822209, Block Type =
Found block already marked corrupted
Block Checking: DBA = 771822210, Block Type =
.DBVERIFY - Verification complete
Total Pages Examined : 1048576
Total Pages Processed (Data) : 0
Total Pages Failing (Data) : 0
Total Pages Processed (Index): 157125
Total Pages Failing (Index): 0
Total Pages Processed (Other): 4203
Total Pages Empty : 887248
Total Pages Marked Corrupt : 0
Total Pages Influx : 0
My doubts are :
1.if i drop the index and recreate the index with logging option will this error won't repeat in alert log file
2.in future if i activate the standby database will database is going to open without any error.
Thanks
Prakash
. -
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! -
How to correct the corrupted archive log files?
Friends,
Our restore method is cloning type.
today i fired this statement(this is one is usually do for the restore) "recover database until cancel using backup controlfile"
i have 60 files in the archive folder.
it executs only 50 files when it comes to 51st file it came out and says could not copy the file.
is that particular file is corrupted?
or is there any restriction in copying no of archivelog files? i mean only 60 files like that.....
suppose if the archive file is corrupted how can i correct it?
thanks
sathyguyNow, this is the error message....
ORA-00310: archived log contains sequence 17480; sequence 17481 required
ORA-00334 archived log; '/archive2/OURDB/archive/ar0000017481.arc'i googled....and find out.....
ORA-00310 archived log contains sequence string; sequence string required
Cause: The archived log is out of sequence, probably because it is corrupted or
the wrong redo log file name was specified during recovery.
Action: Specify the correct redo log file and then retry the operation.so...from the above error messages.....i think the particular archive file(17481) is corrupted. now can i correct this corrupted archive file.
According to the above action, it says to specify the correct redo log file. if the file is not corrupted then where should i specify the redo log file's path?
thanks
sathyguy -
Corrupt log file, but how does db keep working?
We recently had a fairly devastating outage involving a hard drive failure, but are a little mystified about the mechanics of what went on with berkeleydb which I hope someone here can clear up.
A hard drive running a production instance failed because of a disk error, and we had to do a hard reboot to get the system to come back up and right itself (we are running RedHat Enterprise). We actually had three production environments running on that machine, and two came back just fine, but in one, we would get this during recovery:
BDBStorage> Running recovery.
BerkeleyDB> : Log file corrupt at LSN: [4906][8294478]
BerkeleyDB> : PANIC: Invalid argument
BerkeleyDB> : /usr/local/BerkeleyDB.4.8/lib/libdb_java-4.8.so(__os_stack+0x20) [0x2c23af2380]
BerkeleyDB> : /usr/local/BerkeleyDB.4.8/lib/libdb_java-4.8.so(__os_abort+0x15) [0x2c23aee9c9]
BerkeleyDB> : /usr/local/BerkeleyDB.4.8/lib/libdb_java-4.8.so(__env_panic+0xef) [0x2c23a796f9]
BerkeleyDB> : /usr/local/BerkeleyDB.4.8/lib/libdb_java-4.8.so(__env_attach_regions+0x788) [0x2c23aae82c]
BerkeleyDB> : /usr/local/BerkeleyDB.4.8/lib/libdb_java-4.8.so(__env_open+0x130) [0x2c23aad1e7]
BerkeleyDB> : /usr/local/BerkeleyDB.4.8/lib/libdb_java-4.8.so(__env_open_pp+0x2e7) [0x2c23aad0af]
BerkeleyDB> : /usr/local/BerkeleyDB.4.8/lib/libdb_java-4.8.so [0x2c23949dc7]
BerkeleyDB> : /usr/local/BerkeleyDB.4.8/lib/libdb_java-4.8.so(Java_com_sleepycat_db_internal_db_1javaJNI_DbEnv_1open+0xbc) [0x2c239526ea]
BerkeleyDB> : [0x2a99596e77]
We thought, well, perhaps this is related to the disk error, it corrupted a log file and then died. Luckily (or so we thought) we diligently do backups twice a day, and keep a week's worth around. These are made using the standard backup procedure described in the developer's guide, and whenever we've had to restore them, they have been just fine (we've been using our basic setup for something like 9 years now). However, as we retrieved backup after backup, going back three or four days, they all had similar errors, always starting with [4096]. Then we noticed an odd log file, numbered with 4096, which sat around in our logs directory ever since it was created. Eventually we found a good backup, but the customer lost several days' worth of work.
My question here is, how could a log file be corrupted for days and days but not be noticed, say during a checkpoint (which we run every minute or so)? Doesn't a checkpoint itself basically scan the logs, and shouldn't that have hit the corrupt part not long after it was written? The system was running without incident, getting fairly heavy use, so it really mystifies me as to how that issue could be sitting around for days and days like that.
For now all we can promise the customer is that we will automatically restore every backup as soon as it's made, and if something like this happens, we immediately try a graceful shutdown, and if that doesn't come back up, we automatically go back to the 12-hour-old backup. And perhaps we should be doing that anyway, but still, I would like to understand what happened here. Any ideas?Please note, I don't want to make it sound like I'm somehow blaming berkeleydb for the outage-- we realize in hindsight there were better things to do than go back to an old backup, but the customer wanted an immediate answer, even if it was suboptimal. I just feel like I am missing something major about how the system works.
-
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. -
Recovering data when log files corrupt
I am interested to understand if you can easily salvage the data files if the log files corrupt for some reason. Thus far I cannot see how this can be easilly achieved as db_backup requires a working environment, and since the log files may have vanished, the LSN of the data files will be greater than of the last log - and therefore refuse to create the environment.
Ideally I guess, I am looking for a tool that can reset the LSN in place. It would be better to have access to your 100's of GB of data and accept a small amount of inconsistency or data loss than have nothing.
ThanksHi,
Resetting LSNs can be done using db_load -r lsn or using the lsn_reset() method, and it is done in place.
If your log files are corrupted, you would need to verify the database files (you can use the db_verify BDB utility or the verify() method). The actions you will further take depend on the result of verifying the database files:
- if they verify correctly then you just need to reset the LSNs and the file IDs in the databases and start with a fresh environment,
- if they do not verify correctly, you could restore the data from the most recent backup, or you can perform a salvage dump of the data in the database files using db_dump -r or db_dump -R and than reload the data using db_load; see the Dumping and Reloading Databases doc section in the Berkeley DB Programmer's Reference Guide.
Regards,
Andrei -
Block corruption error keep on repeating in alert log file
Hi,
Oracle version : 9.2.0.8.0
os : sun soalris
error in alert log file:
Errors in file /u01/app/oracle/admin/qtrain/bdump/qtrain_smon_24925.trc:
ORA-00604: error occurred at recursive SQL level 1
ORA-01578: ORACLE data block corrupted (file # 1, block # 19750)
ORA-01110: data file 1: '/u01/app/oracle/admin/qtrain/dbfiles/system.dbf'system datafile is restored from backup still the error is logged in alert log file
Inputs are appreciated.
Thanks
PrakashHi,
Thanks for the inputs
OWNER SEGMENT_NAME PARTITION_NAME SEGMENT_TYPE TABLESPACE_NAME EXTENT_ID FILE_ID BLOCK_ID BYTES BLOCKS RELATIVE_FNO
SYS SMON_SCN_TO_TIME CLUSTER SYSTEM 1 1 19749 16384 1 1
SYS SMON_SCN_TO_TIME CLUSTER SYSTEM 2 1 19750 32768 2 1Thanks
Prakash -
Are there any possible reason RMAN generates some corrupt archive log files
Dear all,
Are there any possible reason RMAN generates some corrupt archive log files?
Best Regards,
AmyBecause I try to perform daily backup at lunch time and found out it takes more than 1 hour had no any progress. Normally we take around 40 minus. The following is the log file:
RMAN> Run
2> {
3> CONFIGURE CONTROLFILE AUTOBACKUP ON;
4> CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u03/db/backup/RMAN/%F.bck';
5> CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 1 DAYS;
6> allocate channel ch1 type disk format '/u03/db/backup/RMAN/backup_%d_%t_%s_%p_%U.bck';
7> backup incremental level 1 cumulative database plus archivelog delete all input;
8> backup current controlfile;
9> backup spfile;
10> release channel ch1;
11> }
12> allocate channel for maintenance type disk;
13> delete noprompt obsolete;
14> delete noprompt archivelog all backed up 2 times to disk;
15>
16>
using target database controlfile instead of recovery catalog
old RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
new RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
new RMAN configuration parameters are successfully stored
old RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u03/db/backup/RMAN/%F.bck';
new RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u03/db/backup/RMAN/%F.bck';
new RMAN configuration parameters are successfully stored
old RMAN configuration parameters:
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 1 DAYS;
new RMAN configuration parameters:
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 1 DAYS;
new RMAN configuration parameters are successfully stored
allocated channel: ch1
channel ch1: sid=99 devtype=DISK
Starting backup at 31-MAR-09
current log archived
After that I go to archive log directory "/u02/oracle/uat/uatdb/9.2.0/dbs" and use ls -lt command to see how many archive logs and my screen just hang. After we found out that we cannot use ls -lt command to read arch1_171.dbf
archive log, the rest of archive logs able to use ls -lt command.
We cannot delete this file as well. We shutdown database abort and perform check disk...... and fix the disk error and then open database again. Everything seems back to normal and we can use ls -lt command to read arch1_171.dbf.
The strange problem is we have the same problem in Development and Production..... one ore more archive logs seems to be corrupted under the same directories /u02/oracle/uat/uatdb/9.2.0/dbs.
Does anyone encounter the same problem?
Amy
Maybe you are looking for
-
Sending photos through facebook messenger
I just switched from android to z10. Fine good but have a problem with Facebook app. I can't sent photo through Facebook message. Is there any way? Please help me.
-
New LCD screen shows no video until Windows desktop appears
I just got my first LCD screen a few days ago. Apple 23" Cinema Display. When the system starts or restarts, I do not see the BIOS/startup info on the screen. The screen stays black until Windows desktop loads. Is this normal for LCD screens?
-
10.5.2: Expert Advice Needed
I realize there's a small percentage of the Mac community that believes this, so I'd like it if only experienced mac users of 10+ years would respond. PAST: I've used a mac since 1994, but have been dealing with speed problems of OSX since I first bo
-
Emailing Problem from iPhoto '09
I'm using iPhoto 09 and also have Aperture 3.0 installed on the same laptop. recently I changed the Aperture export settings to limit the jpg size to 640x640 (under 200kb approx). Now it seems like when I select and try to email a photo from iPhoto,
-
Hey everyone, How can I point my client machines back to Apple's site? I used Software Update Enabler to point them to my server but I want to point them back to Apple and I don't know the address. Can anyone help?