先做备份
RMAN> BACKUP DATABASE;
然后
用ULTRAEDIT编辑数据文件,执行
DBV FILE=O1_MF_TEST_35J18KWS_.DBF BLOCKSIZE=8192
DBVERIFY - 开始验证: FILE = O1_MF_TEST_35J18KWS_.DBF
页 294 标记为损坏
页 743 标记为损坏
页 768 标记为损坏
但是
SQL> SELECT tablespace_name, segment_type, owner, segment_name
2FROM dba_extents
3WHERE file_id = 5
4and 294 between block_id AND block_id + blocks - 1;
未选定行
SQL> SELECT tablespace_name, segment_type, owner, segment_name
2FROM dba_extents
3WHERE file_id = 5
4and 743 between block_id AND block_id + blocks - 1;
未选定行
SQL> SELECT tablespace_name, segment_type, owner, segment_name
2FROM dba_extents
3WHERE file_id = 5
4and 768 between block_id AND block_id + blocks - 1;
未选定行
可我编辑的时候明显的是改了数据的。
问题1:为什么上面的查询没有结果
然后执行
RMAN>backup database;
当然是不行的了,
但是此时
SQL> SELECT * FROM V$DATABASE_BLOCK_CORRUPTION;
未选定行
执行
run{
set maxcorrupt for datafile 5 to 1;
backup database;
}
在ALTER。LOG中显示了294错误,
但是此时
SQL> SELECT * FROM V$DATABASE_BLOCK_CORRUPTION;
未选定行
执行
run{
set maxcorrupt for datafile 5 to 2;
backup database;
}
在ALTER。LOG中显示了743错误,
但是此时
SQL> SELECT * FROM V$DATABASE_BLOCK_CORRUPTION;
未选定行
执行
run{
set maxcorrupt for datafile 5 to 3;
backup database;
}
在ALTER。LOG中显示了768错误,
但是此时
SQL> SELECT * FROM V$DATABASE_BLOCK_CORRUPTION;
未选定行
问题2:为什么 V$DATABASE_BLOCK_CORRUPTION没有数据呢?
执行
BLCOKRECOVER DATAFILE 5 BLOCK 249,743,768 是不行的
只能
resotre datafile 5;
recover datafile 5
问题3:我做了RMAN备份,为什么不能执行BLCOKRECOVER?
谢谢!!
|