Logical block corruption
Hi all,
i have database 11.2.0.1.0 on linux 5. on this database we found so many block corruption with are related to indexes.
some of the indexes rebuiled, and rebuilded indexes are working fine. But we have so many indexes corrupted.
SQL> select count(*) from v$database_block_corruption;
COUNT(*)
2347
SQL>
i verified by from RMAN logical check also.
if i keep on rebuilding these indexes it will take long time and maily may impact on performance.
Could you please suggest what is the best possible ways to get out from this.
thanks a lot.
899329 wrote:
Hi all,
i have database 11.2.0.1.0 on linux 5. on this database we found so many block corruption with are related to indexes.
some of the indexes rebuiled, and rebuilded indexes are working fine. But we have so many indexes corrupted.
SQL> select count(*) from v$database_block_corruption;
COUNT(*)
2347
SQL>
i verified by from RMAN logical check also.
if i keep on rebuilding these indexes it will take long time and maily may impact on performance.
Could you please suggest what is the best possible ways to get out from this.
thanks a lot.Replace the sick disk.
Similar Messages
-
Logical Block corruption - not enough RMAN backups
I have to deal with logical block corruption but these guys do not have enough rman backups to go back enough to recover blocks.
All bad blocks are in SYSAUX and it seems because of it EM doesn't work as it's suppose to do. I dropped and recreated EM repository hoping it will clean itself but .... no.
Any ideas?
Oracle Linux 4.7 i386
Oracle 10.2.0.4OCCUPANT_NAME OCCUPANT_DESC SCHEMA_NAME MOVE_PROCEDURE MOVE_PROCEDURE_DESC SPACE_USAGE_KBYTES
EM Enterprise Manager Repository SYSMAN emd_maintenance.move_em_tblspc Move Procedure for Enterprise Manager Repository 52800
EM_MONITORING_USER Enterprise Manager Monitoring User DBSNMP *** MOVE PROCEDURE NOT APPLICABLE *** 1600 -
Logical block corruption in an unused block which is a part of index
Hi All,
During RMAN backup level 0 I am getting a corrupted block my DB:
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: failure of backup command on t20 channel at 07/22/2009 21:30:49
ORA-19566: exceeded limit of 0 corrupt blocks for file /oracle/oradata/DB2/plind05_02.dbf
SQL> select * from v$database_block_corruption;
FILE# BLOCK# BLOCKS CORRUPTION_CHANGE# CORRUPTIO
2950 1879477 1 1.0124E+13 LOGICAL
SQL> SELECT tablespace_name, partition_name,segment_type, owner, segment_name FROM dba_extents WHERE file_id = 2950 and 1879477 between block_id AND block_id + blocks - 1;
no rows selected
So this block does not belong to any object.
SQL > select * from dba_free_space where file_id= 2950 and 1879477 between block_id and block_id blocks -1;+
TABLESPACE_NAME FILE_ID BLOCK_ID BYTES BLOCKS RELATIVE_FNO
USAGIDX_200907 2950 1879433 1048576 128 909
But it exists in dba_free_space so it belongs to file space usage bitmap.
DB Verify shows:
myserver:/oracle/rman/DB2:DBINST1> dbv file=/oracle/oradata/DB2/plind05_02.dbf BLOCKSIZE=8192
DBVERIFY: Release 10.2.0.4.0 - Production on Wed Jul 29 13:47:38 2009
Copyright (c) 1982, 2007, Oracle. All rights reserved.
DBVERIFY - Verification starting : FILE = /oracle/oradata/DB2/plind05_02.dbf
Block Checking: DBA = -480465494, Block Type = KTB-managed data block
**** row 2: key out of order
---- end index block validation
Page 1879477 failed with check code 6401
DBVERIFY - Verification complete
Total Pages Examined : 4194176
Total Pages Processed (Data) : 0
Total Pages Failing (Data) : 0
Total Pages Processed (Index): 3404935
Total Pages Failing (Index): 1
Total Pages Processed (Other): 569
Total Pages Processed (Seg) : 0
Total Pages Failing (Seg) : 0
Total Pages Empty : 788672
Total Pages Marked Corrupt : 0
Total Pages Influx : 0
Highest block SCN : 1795222745 (2360.1795222745)
Now, I have identified that this block belongs to an index subpartition so I have rebuild it with alter index ... rebuild subpartition... However, the RMAN backup still fails and DBV still reports an error.
I know that we could simply recreate the index but the problem is that its quite big (>6GB and table is >7TB).
My strong feeling is that the cause of this is that corrupted blocks will still be reported by RMAN and DBV until they are reused and reformatted.
My question is:
How can I reuse or reformat a block which does not belong to any object?Hi,
Yes you're right, you need to reformat that block.
For that you need to allocate that block to a table, and fill that table with data until high water mark goes higher than block 1879477.
This isthe way I've done it once:
1) check the free space size below that block:
select sum(bytes)/1024/1024 before from dba_free_space where file_id=1879477 and block_id <= 1503738;
Let's say it is 6000 MB
2) create a dummy table, allocate enough extents to fill the size returned from the previous query
This does not format blocks, but the advantage of allocate extents is that you can specify size and datafile:
alter table allocate extents size 6000M datafile '/oracle/oradata/DB2/plind05_02.dbf';
you can check dba_extents to see if it covers block 1879477. If not, try to add a little more extents.
3) fill the table with data to fill those extents.
One idea is to insert one rows into the table, then use 'alter table test minimize records_per_block;' so that each block will have 2 rows maximum.
check the number of blocks (from dba_segments). Say you have 768000 blocks. Then you need to insert 768000/2 rows:
insert into ... select ... from dual connect by level < (768000/2)
4) check the high water mark has reach the end of all extents (compare dba_tables.blocks and dba_segemnts.blocks)
5) if not enough, try to add a little more rows.
Be careful that you don't go too far (especially if you have extensible datafile). Unfortunately, maxextents is ignored on LMT :(
6) now, your block should be reformatted. Just drop the dummy table.
Regards,
Franck. -
Diff between logical and physical block corruption
What is the difference between Physical and Logical block corruption.
Dbverify utility, analyze command is used to check the logical block corruption not the physical one am i correct??
When i get
ORA-01578: ORACLE data block corrupted (file # 9, block # 13)
ORA-01110: data file 9: '/oracle/dbs/tbs_91.f'
ORA-01578: ORACLE data block corrupted (file # 2, block # 19)
ORA-01110: data file 2: '/oracle/dbs/tbs_21.f'
How to conform that this a logical or physical block corruption???
please through some light regarding this....
kumareshthe following link may help u
http://download-east.oracle.com/docs/cd/B19306_01/backup.102/b14191/rcmconc1012.htm -
I want to check logical block corruption and repair it with dbms_repair package.
For that first i need to corrupt block logically.
How to corrupt oracle database table block logically? Is there any procedure to do that?
Thanks,Hello,
Thanks for you resposes.
I tried to corrupt datablock by editing datafile and remove some data and add some data.
1. Execurted below rman commad
RMAN> backup validate check logical database;
Output show block is corrupted.
Below query is also listing corrupted blocks.
SQL> select * from v$database_block_corruption;
But when i am checking corruption with dbms_repair packges it doesn't list any corruption.
SET SERVEROUTPUT ON
DECLARE num_corrupt INT;
BEGIN
num_corrupt := 0;
DBMS_REPAIR.CHECK_OBJECT (
SCHEMA_NAME => 'TEST',
OBJECT_NAME => 'TEST1',
REPAIR_TABLE_NAME => 'REPAIR_TABLE',
CORRUPT_COUNT => num_corrupt);
DBMS_OUTPUT.PUT_LINE('number corrupt: ' || TO_CHAR (num_corrupt));
END;
Please let me know any other scenarios to corrupt LOGICAL block.
Thanks, -
Block corruption in Free Space
Hi,
Environment:-
Oralce 10.2.0
Windows platform
I am facing problem of Logical block corruption.
RMAN validate block corruption (DBVerify as well) But no entry in Alert log file.
When I check Which segment has block corruption I found that block corruption are in free blocks of tablespace (DBA_FREE_SPACE).
To Fix it I create table and allocate corrupted block to that table. I confirm corrupted block allocation in table (using DBA_EXTENTS).
But when I insert rows in that table to reuse corrupted block Oracle give error of ora-1578 Block corruption, and I am not able to reuse corrupted block(as many expert suggest to overcome block corruption in free space).
I dropped table and recreate and repeat this process many times but still no success.
So. can anybody help me on this.
I appreciate your efforts and time you spend to read this
ThanksHello,
Please check the link i posted.
Example: Detecting Corruption
The CHECK_OBJECT procedure checks the specified object, and populates the repair table with information about corruptions and repair directives. You can optionally specify a range, partition name, or subpartition name when you want to check a portion of an object.
Validation consists of checking all blocks in the object that have not previously been marked corrupt. For each block, the transaction and data layer portions are checked for self consistency. During CHECK_OBJECT, if a block is encountered that has a corrupt buffer cache header, then that block is skipped.
The following is an example of executing the CHECK_OBJECT procedure for the scott.dept table.
SET SERVEROUTPUT ON
DECLARE num_corrupt INT;
BEGIN
num_corrupt := 0;
DBMS_REPAIR.CHECK_OBJECT (
SCHEMA_NAME => 'SCOTT',
OBJECT_NAME => 'DEPT',
REPAIR_TABLE_NAME => 'REPAIR_TABLE',
CORRUPT_COUNT => num_corrupt);
DBMS_OUTPUT.PUT_LINE('number corrupt: ' || TO_CHAR (num_corrupt));
END;
SQL*Plus outputs the following line, indicating one corruption:
number corrupt: 1 -
How to respond to physical block corruption??
Hi, all.
As far as I know, there are two types of block corruption.
1. logical block corruption
2. physical block corruption
In case of logical block corruption, there are a few method of how to take care of it.
such as BMR with rman, media recovery, and dbms package.
In case of physical block corruption, how can I respond to this type of errors?
Does physical block corruption of a disk mean disk failure??
If so, I have to replace the disk? Or, is there any other way to solve
this type of errors?
In addition, how can I know that the block corruption is caused by logical problems
or physical problems??
Thanks and Regards.> In case of physical block corruption, how can I respond to this type of
errors?
Round around in circles, screaming at the top of your voice "we're all going to die!".
Hey, why that funny looks? It works. And it scares the stuffings out of management and colleagues... ;-)
> Does physical block corruption of a disk mean disk failure??
If by physical corruption you mean that reading a data block results in I/O errors and a corrupt/incomplete read buffer, then yes. The "disk" is failing - or more correctly, the I/O h/w is failing. It may not be the disk itself. It could be a problem with the HBA, a controller card, etc.
In exceptional cases it may not even be a h/w issue. It could be a s/w induced error. I once got physical I/O errors reported by Oracle. The problem was traced to an incompatibility between the ASMlib kernel module and EMC Powerpath. The SAN disks & h/w were fine.
> If so, I have to replace the disk? Or, is there any other way to solve
this type of errors?
There should be some kind of diagnostics you can run on the disks to determine if they are failing. Simply replacing a disk because there seems to be a physical corruption problem may not solve the problem itself.
You need to identify the actual problem. Which means looking at all Oracle traces/dumps in this regard, looking at the kernel logs, manually dumping blocks to see the results, using whatever I/O & disk diagnostic tools available, etc.
> In addition, how can I know that the block corruption is caused by logical
problems or physical problems??
That depends on what you define as logical and physical corruption. The latter means to me that I cannot get the data off the disk without some kind of I/O error. Logical means that the data can be read just fine, but is garbage. Which could simply mean GIGO without implying any kind of underlaying h/w failure. -
Hi
I know rman detect block corruption but my question is block corruption having two types one is physical block corruption and other is logical block corruption
by default rman enable physical block corruption but by default rman not able to detect logical block corruption.Plz tell how i enable logical block corruption with RMAN?
Please make correction if i m wrong.
Thanks a lot.>> Sorry i am not telling you i am using oracle 9iR2 instead of oracle 10g
It's okay.
That's why; it's been already told that before posting in the forums, better it's better to specify/mention the Oracle Version/OS Details, etc to get the accurate and response.
>> Send me if you have 9i related document.
No need to send you the related documents, when there is a bulk repository available for free of cost for everybody.
All you need to do is, just search in http://tahiti.oracle.com/ with the required word or phrase.
Don't take me wrong, but make a habit of searching related documents from the Oracle Documentations.
Regards,
Sabdar Syed. -
Block corruption detection in RMAN.
Hi,
I'd be be grateful if anyone could confirm or clarify the behaviour of the RMAN backup command with regard to detecting corrupt blocks in the datafiles.
The environment is as follows:
10.2.0.5.1
Solaris 10
2 node RAC
Block Change Tracking file is not used.
DB_BLOCK_CHECKING=OFF
DB_BLOCK_CHECKSUM=OFF
Does the BACKUP DATABASE command check both physical and logical block corruptions when run either as a full backup or incremental?
I'm trying to establish wether running a BACKUP _VALIDATE [CHECK LOGICAL]_* DATABASE on a nightly basis provides any value if the same checks are being performed by the standard backup commands that are already scheduled every night?
Any input appreciated.
ThanksHi,
By default, RMAN just check for physical corruption, either in full or incremental backups. To check logical corruption you have to use the command "backup check logical;".
About the parameter DB_BLOCK_CHECKSUM, its default is TRUE and Oracle Corporation advises leaving this parameter on default, so that any damage caused while the block is on disk, or corruptions introduced during the write and read process, will be detected.
Hope it help.
Regards, -
Data block corrupted on standby database (logical corruption)
Hi all,
we are getting the below error on our DRSITE,it is MANUAL PHYSCIAL STANDBY DATABSE...
The following error has occurred:
ORA-01578: ORACLE data block corrupted (file # 3, block # 3236947)
ORA-01110: data file 3: '/bkp/oradata/orcl_raw_cadata01'
ORA-26040: Data block was loaded using the NOLOGGING option
I have checked in the Primary database, that there are some object which are not being logged into the redo logfiles.....
SQL> select table_name,INDEX_NAME,logging from dba_indexes where logging='NO'
TABLE_NAME INDEX_NAME LOG
MENU_MENUS NUX_MENU_MENUS_01 NO
MENU_USER_MENUS MENU_USER_MENUS_X NO
OM_CITY IDM_OM_CITY_CITY_NAME NO
OM_EMPLOYER EMPLR_CODE_PK NO
OM_EMPLOYER IDM_EMPLR_EMPLR_NAME NOOM_STUDENT_HEAD OM_STUDENT_HEAD_HEAD_UK01 NO
OT_DAK_ENTRY_DETL DED_SYS_ID_PK NO
OT_DAK_ENTRY_HEAD DEH_SYS_ID_PK NO
OT_DAK_ENTRY_HEAD IDM_DEH_DT_APPL_REGION NO
OT_DAK_ENTRY_HEAD IDM_DEH_REGION_CODE NO
OT_DAK_REFUNDS_DETL DRD_SYS_ID_PK NO
TABLE_NAME INDEX_NAME LOG
OT_MEM_FEE_COL_DETL IDM_MFCD_MFCH_SYS_ID NO
OM_STUDENT_HEAD IDM_STUD_COURSE NO
13 rows selected.
so the main problem is in the OM_EMPOYER tables if i would delete the indexes from that table recreate it again with the logging clause,and then apply the archvied logs to the DRSITE.WILL THE problem will resolve.
Pls suggest me...Hi..
Firstly how did you confirm that it was that index only.Can you post the output of
SELECT tablespace_name, segment_type, owner, segment_name
FROM dba_extents WHERE file_id = 3 and 3236947 between block_id
AND block_id + blocks - 1;
This query can take time, if are sure that its the index don't fire this command .
Secondly, when you will drop and recreate the index, it will be logged into the redo logfile.This information will be be logged in to an the archivelog file as its the replica of the redo logfile. Then when you apply this archive log maually, it will drop that index and then recreate it using the same sql.
HTH
Anand -
ORA-27046: file size is not a multiple of logical block size
Hi All,
Getting the below error while creating Control File after database restore. Permission and ownership of CONTROL.SQL file is 777 and ora<sid>:dba
ERROR -->
SQL> !pwd
/oracle/SID/sapreorg
SQL> @CONTROL.SQL
ORACLE instance started.
Total System Global Area 3539992576 bytes
Fixed Size 2088096 bytes
Variable Size 1778385760 bytes
Database Buffers 1744830464 bytes
Redo Buffers 14688256 bytes
CREATE CONTROLFILE SET DATABASE "SID" RESETLOGS ARCHIVELOG
ERROR at line 1:
ORA-01503: CREATE CONTROLFILE failed
ORA-01565: error in identifying file
'/oracle/SID/sapdata5/p11_19/p11.data19.dbf'
ORA-27046: file size is not a multiple of logical block size
Additional information: 1
Additional information: 1895833576
Additional information: 8192
Checked in target system init<SID>.ora and found the parameter db_block_size is 8192. Also checked in source system init<SID>.ora and found the parameter db_block_size is also 8192.
/oracle/SID/102_64/dbs$ grep -i block initSID.ora
Kindly look into the issue.
Regards,
SoumyaPlease chk the following things
1.SPfile corruption :
Startup the DB in nomount using pfile (ie init<sid>.ora) create spfile from pfile;restart the instance in nomount state
Then create the control file from the script.
2. Check Ulimit of the target server , the filesize parameter for ulimit shud be unlimited.
3. Has the db_block_size parameter been changed in init file by any chance.
Regards
Kausik -
Finding and fixing block corruption in oracle 10g
10.2.0.5.6
OS: Hp-unix
databases files on RAW.
DB Size: 10 TBs+
We had a SAN outage recently. The DB is back online. We want to check for block corruption to be on the safe side. We are planning to take a SAN EMC BCV copy of prod to run this. Looking for opinioms on the best way.Production is up and running. This is just a sanity check.
We are NOT using RMAN for backups. We do a BCV copy and then back that up and archive logs to tape.
RMAN: Can we do this from the control files? Do we have to set anything up? Is this the best way?
DBMS_REPAIR: I have not used this. We don't even have the package installed. I can install it.
DB_VERIFY: not sure if this is a good option or not. Is this current? I know I'll have to do it file by file and grep the logs. I have used this in the past, but its been a while.
Performance issues, CPU, I/O don't matter. We are doing a BCV copy and then mounting the DB on a new server.Guess2 wrote:
10.2.0.5.6
OS: Hp-unix
databases files on RAW.
DB Size: 10 TBs+
We had a SAN outage recently. The DB is back online. We want to check for block corruption to be on the safe side. We are planning to take a SAN EMC BCV copy of prod to run this. Looking for opinioms on the best way.Production is up and running. This is just a sanity check.
We are NOT using RMAN for backups. We do a BCV copy and then back that up and archive logs to tape.
RMAN: Can we do this from the control files? Do we have to set anything up? Is this the best way?
DBMS_REPAIR: I have not used this. We don't even have the package installed. I can install it.
DB_VERIFY: not sure if this is a good option or not. Is this current? I know I'll have to do it file by file and grep the logs. I have used this in the past, but its been a while.
Performance issues, CPU, I/O don't matter. We are doing a BCV copy and then mounting the DB on a new server.
bcm@bcm-laptop:~$ dbv -help
DBVERIFY: Release 11.2.0.1.0 - Production on Mon May 21 07:29:42 2012
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
Keyword Description (Default)
FILE File to Verify (NONE)
START Start Block (First Block of File)
END End Block (Last Block of File)
BLOCKSIZE Logical Block Size (8192)
LOGFILE Output Log (NONE)
FEEDBACK Display Progress (0)
PARFILE Parameter File (NONE)
USERID Username/Password (NONE)
SEGMENT_ID Segment ID (tsn.relfile.block) (NONE)
HIGH_SCN Highest Block SCN To Verify (NONE)
(scn_wrap.scn_base OR scn) can be done against any datafile; open or closed, production or clone
Handle: Guess2
Status Level: Newbie
Registered: Aug 5, 2000
Total Posts: 454
Total Questions: 212 (201 unresolved)
WHY so MANY unanswered questions?
Edited by: sb92075 on May 21, 2012 7:31 AM -
Buffer I/O error on device hda1, logical block 81934
I getting the follow erro message when I session into the CUE of the UC520. All advice appreciated. I read the similar post, however I'm not given any prompts to make a selection.
Buffer I/O error on device hda1, logical block 81934
Processing manifests . Error processing file exceptions.IOError [Errno 5] Input/output error
. . . . . . Error processing file zlib.error Error -3 while decompressing: invalid distances set
. . . . . . . . Error processing file zlib.error Error -3 while decompressing: invalid distances set
. . complete
==> Management interface is eth0
==> Management interface is eth0
malloc: builtins/evalfile.c:138: assertion botched
free: start and end chunk sizes differ
Stopping myself.../etc/rc.d/rc.aesop: line 478: 1514 Aborted /bin/runrecovery.sh
Serial Number:
INIT: Entering runlevel: 2
********** rc.post_install ****************
INIT: Switching to runlevel: 4
INIT: Sending processes the TERM signal
STARTED: cli_server.sh
STARTED: ntp_startup.sh
STARTED: LDAP_startup.sh
STARTED: SQL_startup.sh
STARTED: dwnldr_startup.sh
STARTED: HTTP_startup.sh
STARTED: probe
STARTED: superthread_startup.sh
STARTED: ${ROOT}/usr/bin/products/herbie/herbie_startup.sh
STARTED: /usr/wfavvid/run-wfengine.sh
STARTED: /usr/bin/launch_ums.sh
Waiting 5 ...Buffer I/O error on device hda1, logical block 70429
Waiting 6 ...hda: no DRQ after issuing MULTWRITE
hda: drive not ready for command
Buffer I/O error on device hda1, logical block 2926
Buffer I/O error on device hda1, logical block 2927
Buffer I/O error on device hda1, logical block 2928
Buffer I/O error on device hda1, logical block 2929
Buffer I/O error on device hda1, logical block 2930
Buffer I/O error on device hda1, logical block 2931
Buffer I/O error on device hda1, logical block 2932
Buffer I/O error on device hda1, logical block 2933
Buffer I/O error on device hda1, logical block 2934
REISERFS: abort (device hda1): Journal write error in flush_commit_list
REISERFS: Aborting journal for filesystem on hda1
Jun 17 16:36:11 localhost kernel: REISERFS: abort (device hda1): Journal write error in flush_commit_list
Jun 17 16:36:11 localhost kernel: REISERFS: Aborting journal for filesystem on hda1
Waiting 8 ...MONITOR EXITING...
SAVE TRACE BUFFER
Jun 17 16:36:13 localhost err_handler: CRASH appsServices startup startup.sh System has crashed. The trace buffer information is stored in the file "atrace_save.log". You can upload the file using "copy log" command
/bin/startup.sh: line 262: /usr/bin/atr_buf_save: Input/output error
Waiting 9 ...Buffer I/O error on device hda1, logical block 172794
INIT: Sending processes the TERM signal
INIT: cannot execute "/etc/rc.d/rc.reboot"
INIT: no more processes left in this runlevelThe flash card for CUE might be corrupt. Try and reinstall CUE and restore from backup to see if that fixes it. If it doesnt, try a different flash card.
Cole -
11g Block Corruption Question..
Hello All,
I am running an 11g (11.1.0.7) 64 bit on a Redhat 5.3 host. I did an RMAN clone or copy of this database to another Redhat host, same file structure, DB version, identical to production. I am using 11g enterprise manager GRID control to manage this newly cloned host. When I try to perform a full-backup using the 11g enterprise manager grid control GUI, it tell me that I have block corruption in datafile#7 and lists all the blocks. Now, I know for sure that my production host (where the clone was made from) does not have any corrupt blocks of any sort. I also ran a 'validate database' and 'validate datafile 7' command on the newly created host and all reports back ok. The full backup completes successfully, but where is it getting this corrupt datafile 7 from? Can I clear this block corruption list somehow? Both Production and the newly created clone are free of any block corruption. When I execute an RMAN> backup database command on the newly created host, it fires off and does its thing, no mention of any block corruption, but when I want to perform a full backup with the GUI, it warns me of the block corruption - but lets the full backup continue and complete. GUI issue with 11g enterpise manager grid control?
Please advise..
Thanks,
RBIts not mandatory that if you are getting the message of block corruption from GUI , it must be true only. Since you are using RMAN, if it can't find a buffer to read in few tries( 3 I believe) , it would mark the buffer as "corrupted" but that's NOT a corruption. As long as you don't see ora-1578 in the alert log repeatedly, you don't have a corruption. What more you can do is to run the command validate ....check logical to confirm that there is some logical corruption detected or not. Other than that, IMO you are fine.
Aman.... -
Checking block corruption, why in alert it is saying Error in trace file
Hi,
I am using Oracle 10g 10.2.0.1 with linux 32 bit
I wanted to check block corruption using RMAN by following statement
backup validate check logical database;
when i executed the statement, following was the output
Starting backup at 09-MAY-08
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=91 devtype=DISK
channel ORA_DISK_1: starting full datafile backupset
channel ORA_DISK_1: specifying datafile(s) in backupset
input datafile fno=00004 name=/u01/app/oracle/oradata/test/users01.dbf
input datafile fno=00008 name=/u01/app/oracle/oradata/test/workflowuser
input datafile fno=00001 name=/u01/app/oracle/oradata/test/system01.dbf
input datafile fno=00003 name=/u01/app/oracle/oradata/test/sysaux01.dbf
input datafile fno=00010 name=/u01/app/oracle/oradata/test/ifan
input datafile fno=00002 name=/u01/app/oracle/oradata/test/undotbs01.dbf
input datafile fno=00007 name=/u01/app/oracle/oradata/test/taker
input datafile fno=00009 name=/u01/app/oracle/oradata/test/testing1
input datafile fno=00005 name=/u01/app/oracle/oradata/test/brokerdb
input datafile fno=00006 name=/u01/app/oracle/oradata/test/moneio
input datafile fno=00011 name=/u01/app/oracle/oradata/test/web1
input datafile fno=00012 name=/u01/app/oracle/oradata/test/e1
input datafile fno=00013 name=/u01/app/oracle/oradata/test/ind1
channel ORA_DISK_1: backup set complete, elapsed time: 00:06:57
channel ORA_DISK_1: starting full datafile backupset
channel ORA_DISK_1: specifying datafile(s) in backupset
including current control file in backupset
including current SPFILE in backupset
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:02
Finished backup at 09-MAY-08
and when i do the following query
select * from v$database_block_corruption in sqlplus
then there was no row
so it means there is no logical corruption, but when i am looking at alert log file it is giving following lines
Fri May 9 10:14:04 2008
Errors in file /u01/app/oracle/admin/test/udump/test_ora_6606.trc:
Fri May 9 10:14:04 2008
Errors in file /u01/app/oracle/admin/test/udump/test_ora_6606.trc:
Fri May 9 10:14:04 2008
Errors in file /u01/app/oracle/admin/test/udump/test_ora_6606.trc
and in above trace file following contents
/u01/app/oracle/admin/test4/udump/test_ora_6606.trc
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1
System name: Linux
Node name: test
Release: 2.6.18-5-686
Version: #1 SMP Wed Oct 3 00:12:50 UTC 2007
Machine: i686
Instance name: test
Redo thread mounted by this instance: 1
Oracle process number: 61
Unix process pid: 6606, image: oracle@test (TNS V1-V3)
*** 2008-05-09 10:14:04.093
*** ACTION NAME:(0000040 STARTED19) 2008-05-09 10:14:04.071
*** MODULE NAME:(backup full datafile) 2008-05-09 10:14:04.071
*** SERVICE NAME:(SYS$USERS) 2008-05-09 10:14:04.071
*** SESSION ID:(91.40318) 2008-05-09 10:14:04.071
Is it normal, why the in alert file it is saying that Error in.
And it did not create any backupset in folder of flash recovery but in Enterprise manager it is showing last backup on 09-may-2008, why ?
Regards,See logical corruption is normally termed as the internal inconsistancy within the block which is not caused by Oracle but by the user.So if you find internal inconsistancy than the best option is to look at the user and ask him to get the values sorted out.If the internal inconsistancy is some thig like index fragmentation sort of things or index entry pointing to a null rowid than they are termed as the logical corruption and they should not impact your normal as he data is already there and there is no issue in reading the block as such.
The term "corrupted blocks" I would call both in the tables and backup for those data blocks which are unreadable by Oracle which actualy is Physical corruption.
If i am doing the checking at 2:00 am, does it take more than two hours.I didnt understand this.
what can we do for Physical corruptionThis will need the block to be recovered with the Block Recover command of RMAN and a good backup.Read about it here,
http://download.oracle.com/docs/cd/B19306_01/backup.102/b14194/rcmsynta010.htm
About the Logical and Physical corruption checks , check here
http://download-west.oracle.com/docs/cd/B19306_01/backup.102/b14191/rcmconc1012.htm
Aman....
Maybe you are looking for
-
Hi Experts, I want to send a warning message to the order log , for this I used CALL FUNCTION 'CRM_MESSAGE_COLLECT' EXPORTING iv_caller_name = 'ORDER' iv_ref_object = iv_guid iv_msgno = 002 iv_ms
-
Trying to understand this...
Hello, im trying to figure out the function for this code..its looks like i cant find it anywhere in the code. the .jsp body <input type="button" name="btnSubmitCom" value="Submit" class="button" onClick="submitPCApplicationComplete()"> the submitPC
-
IPOD main menu has no "songs" list
I just bought my first mac laptop and am thrilled with all the new stuff there is to play with. I also have my first IPOD with video (30 gb) and am endeavering to load it with music and sync the ITUNES list to the IPOD, but there is no "Songs" listed
-
MS VC++ Runtime Library error when running SQL Server Profiler
Environment: - Windows Server 2008 R2 Standard - SQL Server 2008 R2 Enterprise with SP2 and CU11 When starting up the SQL Server Profiler tool, I faced the following issue Event log: Faulting application name: Profiler.exe, version: 2009.100.1600.1
-
Media Export Bug: Red flashes in F55 media
Hi all, I have been having endless trouble with exporting media via Premiere Pro. The issue: I am exporting animation codec via quicktime for use in After Effects. Each and every time (at different points - not consistent) red wash flashes will appea