错误:在 exp 时出现以下错误:
EXP-00056: 遇到 ORACLE 错误 1578
ORA-01578: ORACLE 数据块损坏(文件号4,块号65)
ORA-01110: 数据文件 4: 'E:/ORACLE/ORADATA/USERS.DBF'
措施:
-- 1. 检查损坏的对象
SELECT tablespace_name, segment_type, owner, segment_name
FROM dba_extents
WHERE file_id = 4
and 65 between block_id AND block_id + blocks - 1;
-- 2. 设置内部事件,使exp跳过损坏的block
ALTER SYSTEM SET EVENTS='10231 trace name context forever,level 10' ;
-- 3. 导出表
exp user1/passwd1 file=t1.dmp tables=t1
-- 4. 删除有坏块的表
drop table t1 purge;
-- 5. 导入表
imp user1/passwd1 file=t1.dmp tables=t1
-- 6. 清除跟踪事件
ALTER SYSTEM SET EVENTS='10231 trace name context off' ;