iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >oracle中ORA-01578和ORA-01110数据文件出现坏块时跳过损坏的块怎么办
  • 380
分享到

oracle中ORA-01578和ORA-01110数据文件出现坏块时跳过损坏的块怎么办

2024-04-02 19:04:59 380人浏览 安东尼
摘要

小编给大家分享一下oracle中ORA-01578和ORA-01110数据文件出现坏块时跳过损坏的块怎么办,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面

小编给大家分享一下oracle中ORA-01578和ORA-01110数据文件出现坏块时跳过损坏的块怎么办,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

ORA-01578: ORACLE 数据块损坏 (文件号 4, 块号 293465)

ORA-01110: 数据文件 4: 'D:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF'

使用命令检查损坏的是否为普通数据。

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

方法2:
然后用10231该命令设置全表扫描时跳过坏块。

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

 也可以alter session在session级中使用,然后通过

create table as select的方式来拯救数据(当然会有数据损失)。
比对问题表和新表数据条数,查看丢失数据条数

exp 导出新表数据
drop table t1 purge; 彻底删除问题表
imp导入新表数据,然后将其改名为问题表同名即可。
也可不创建新表,直接10231跳过坏块后exp导出问题表数据。

方法3:

另外一种方法是使用SKIP_CORRUPT_BLOCKS标记,方法为使用命令

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 ; 收集剩下的信息。
最后清除这个标记。
SQL> execute DBMS_REPAIR.SKIP_CORRUPT_BLOCKS('NEWDOCHNZZ','T_PATIENT_DOC_COLB',flags=>dbms_repair.noskip_flag);

关于坏块的metalink文档如下:

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

以上是“oracle中ORA-01578和ORA-01110数据文件出现坏块时跳过损坏的块怎么办”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网数据库频道!

您可能感兴趣的文档:

--结束END--

本文标题: oracle中ORA-01578和ORA-01110数据文件出现坏块时跳过损坏的块怎么办

本文链接: https://www.lsjlt.com/news/64534.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作