阅读内容

巧用Oracle8i来修复数据库坏块的简单方法

[日期:2007-04-14] 来源:Linux公社  作者:Linux



在进行SUN CLUSTER双机切换、意外断电或其它情况下,有时会发生共享盘MOUNT不上的情况,需要使用FSCK对共享盘进行修复。修复完成后,在数据库启动过程中,却又出现"数据块损坏,无法启动数据库"的现象,此时,可以根据不同的数据块损坏类型,检测并修复错误。在此介绍三种使用Oracle8i修复损坏数据块的方法。

一、数据块损坏,错误代码为:

ORA-01578

ORA-1115 I/O ERROR READING BLOCK

通常后跟ORA-737X错误与操作系统错误(如UNIX中的错误号5)

产生原因:

1. 硬件问题(磁盘控制器问题或磁盘问题);

2. 物理级的数据块损坏(通常由前一原因造成);

3. 处理巨型文件时,后跟错误代码ORA-7371。

确定故障原因与恢复的方法:

1. 查看alert.log文件中其它ORA-1115错误的发生情况:

1) 如果指向不同磁盘的文件,则是磁盘控制器的问题,查看V$DATAFILE,有哪些文件位于该控制器下,转到第二步;

2) 如果指向相同磁盘的不同文件,则是磁盘的问题,转到第二步;

3) 如果指向同一个文件,执行以下语句查找文件名:

SELECT SEGMENT_NAME,SEGMENT_TYPE FROM DBA_EXTENTS 
WHERE FILE_ID=<文件号> AND <块号> 
BETWEEN BLOCK_ID AND BLOCK_ID+BLOCKS-1;

其中,文件号与块号是ORA-1115中指出的,如果该查询持续指向某表或索引,则重建它们即可。

12下一页  GO
【内容导航】
第1页:巧用Oracle8i来修复数据库坏块的简单方法 第2页:巧用Oracle8i来修复数据库坏块的简单方法



相关资讯       oracle 
本文评论       全部评论
发表评论
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款


点评: 字数
姓名:

L
I
N
U
X


GOOGLE搜索
Google