WEB开发网
开发学院数据库Oracle Oracle中模拟及修复数据块损坏 阅读

Oracle中模拟及修复数据块损坏

 2008-12-16 13:02:42 来源:WEB开发网   
核心提示: 已经卸载数据库,ORACLE 例程已经关闭,Oracle中模拟及修复数据块损坏(2),2.损坏数据文件关闭数据库后用Ultredit编辑数据文件,随便更改几个字符.然后启动数据库.SQL> startupORACLE 例程已经启动,Total System Global Area 1

已经卸载数据库。

ORACLE 例程已经关闭。

2.损坏数据文件

关闭数据库后用Ultredit编辑数据文件,随便更改几个字符.然后启动数据库.

SQL> startup
ORACLE 例程已经启动。
Total System Global Area 101785252 bytes
Fixed Size 454308 bytes
Variable Size 75497472 bytes
Database Buffers 25165824 bytes
Redo Buffers 667648 bytes
数据库装载完毕。

数据库已经打开。

SQL> select count(*) from eygle.t;
select count(*) from eygle.t
*
ERROR 位于第 1 行:
ORA-01578: ORACLE 数据块损坏(文件号4,块号35)
ORA-01110: 数据文件 4: 'E:ORACLEORADATAEYGLEBLOCK.DBF'
SQL>

此时如果查询该表,会出现错误,数据块损坏无法读取.有个内部工具BBED也可以用来编辑数据块的内容

3.使用DBV检查数据文件

E:Oracleoradataeygle>dbv file=block.dbf blocksize=8192
DBVERIFY: Release 9.2.0.4.0 - Production on 星期一 3月 8 20:48:50 2004
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
DBVERIFY - 验证正在开始 : FILE = block.dbf

标记为损坏的页35

***
Corrupt block relative dba: 0x01000023 (file 4, block 35)
Bad check value found during dbv:
Data in bad block -
type: 6 format: 2 rdba: 0x01000023
last change scn: 0x0000.00049097 seq: 0x1 flg: 0x06
consistency value in tail: 0x90970601
check value in block header: 0xd6cb, computed block checksum: 0x2c0a
spare1: 0x0, spare2: 0x0, spare3: 0x0
***

上一页  1 2 3 4  下一页

Tags:Oracle 模拟 修复

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接