Network Security Internet Technology Development Database Servers Mobile Phone Android Software Apple Software Computer Software News IT Information

In addition to Weibo, there is also WeChat

Please pay attention

WeChat public account

Shulou

How to skip damaged blocks when bad blocks appear in ORA-01578 and ORA-01110 data files in oracle?

2025-01-16 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Database >

Share

Shulou(Shulou.com)05/31 Report--

Editor to share with you how to skip the damaged blocks when there are bad blocks in ORA-01578 and ORA-01110 data files in oracle. I believe most people don't know much about it, so share this article for your reference. I hope you can learn a lot after reading this article. Let's learn about it together.

ORA-01578: ORACLE block corruption (file number 4, block number 293465) ORA-01110: data file 4: d:\ APP\ ADMINISTRATOR\ ORADATA\ ORCL\ USERS01.DBF'

Use the command to check if the corrupted data is normal.

SELECT tablespace_name, segment_type, owner, segment_name

FROM dba_extents

WHERE file_id = 4

And 293465 between block_id AND block_id + blocks-1

Method 2:

Then use 10231 this command to set up a full table scan to skip bad blocks.

ALTER SYSTEM SET EVENTS='10231 trace name context forever,level 10'

You can also use alter session at the session level, and then use the

Create table as select way to save data (there will be data loss, of course).

Compare the number of data items in the problem table and the new table, and view the number of missing data items

Exp exports new table data

Drop table T1 purge; completely deletes the problem table

Imp imports the new table data and renames it to the problem table with the same name.

You can also export problem table data after 10231 skipping bad blocks without creating a new table.

Method 3:

Another way is to use the SKIP_CORRUPT_BLOCKS tag, using the command

SQL > alter session set db_file_multiblock_read_count=1

SQL > execute DBMS_REPAIR.SKIP_CORRUPT_BLOCKS ('NEWDOCHNZZ','T_PATIENT_DOC_COLB')

SQL > create table abak as select * from T_PATIENT_DOC_COLB; collect the remaining information.

Finally, clear the mark.

SQL > execute DBMS_REPAIR.SKIP_CORRUPT_BLOCKS ('NEWDOCHNZZ','T_PATIENT_DOC_COLB',flags= > dbms_repair.noskip_flag)

The metalink documentation for bad blocks is as follows:

RELATED DOCUMENTS

-

-TECH: Database Block Checking Features Note 32969.1

-Handling Oracle Block Corruptions in Oracle7/8/8i/9i Note 28814.1

-Handling Rollback Segment Corruptions in Oracle7.3 to 8.1.7 Note 106638.1

-Extracting Data from a Corrupt Table using

SKIP_CORRUPT_BLOCKS or Event 10231 Note 33405.1

-ORA-1578 ORACLE data block corrupted (file # s, block # s) Note 18976.1

-Parameter DIRECT: Conventional Path Export Versus Direct

Path Export Note 155477.1

These are all the contents of this article entitled "how to skip damaged blocks when there are bad blocks in ORA-01578 and ORA-01110 data files in oracle". Thank you for reading! I believe we all have a certain understanding, hope to share the content to help you, if you want to learn more knowledge, welcome to follow the industry information channel!

Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.

Views: 0

*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.

Share To

Database

Wechat

© 2024 shulou.com SLNews company. All rights reserved.

12
Report