日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

oracle rman 检查坏块,Oracle中使用RMAN来检验坏块

發(fā)布時(shí)間:2024/9/27 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle rman 检查坏块,Oracle中使用RMAN来检验坏块 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

RMAN即recovery manager可以通過在執(zhí)行的備份任務(wù)中,僅僅驗(yàn)證數(shù)據(jù)文件中的數(shù)據(jù)塊而不生成實(shí)際的備份,這樣做的目的是純粹為了了解數(shù)據(jù)文件中是否有壞塊。

RMAN在這個(gè)環(huán)境中:

驗(yàn)證數(shù)據(jù)文件是否存在

數(shù)據(jù)文件位于正確的存放位置

在RMAN嘗試檢驗(yàn)這些數(shù)據(jù)文件時(shí),將邏輯或物理訛誤的塊找出來并臨時(shí)記錄到V$DATABASE_BLOCK_CORRUPTION視圖中

具體的使用為

檢驗(yàn)整個(gè)數(shù)據(jù)庫(kù)

backup check logical validate database;

檢驗(yàn)個(gè)別數(shù)據(jù)文件

backup check logical validate datafile 1;

檢驗(yàn)多個(gè)指定數(shù)據(jù)文件

backup check logical validate datafile 1, 2;

Script:

1) $ rman target / nocatalog

2) RMAN> run {

allocate channel d1 type disk;

allocate channel d2 type disk;

allocate channel d3 type disk;

allocate channel d4 type disk;

backup validate check logical database;

}

3) select * from V$DATABASE_BLOCK_CORRUPTION ;

REM www.oracledatabase12g.com & www.askmaclean.com

4) If V$DATABASE_BLOCK_CORRUPTION contains rows please run this query to

find the objects that contains the corrupted blocks:

SELECT e.owner,

e.segment_type,

e.segment_name,

e.partition_name,

c.file#,

greatest(e.block_id, c.block#) corr_start_block#,

least(e.block_id + e.blocks - 1, c.block# + c.blocks - 1) corr_end_block#,

least(e.block_id + e.blocks - 1, c.block# + c.blocks - 1) -

greatest(e.block_id, c.block#) + 1 blocks_corrupted,

null description

FROM dba_extents e, v$database_block_corruption c

WHERE e.file_id = c.file#

AND e.block_id <= c.block# + c.blocks - 1

AND e.block_id + e.blocks - 1 >= c.block#

UNION

SELECT s.owner,

s.segment_type,

s.segment_name,

s.partition_name,

c.file#,

header_block corr_start_block#,

header_block corr_end_block#,

1 blocks_corrupted,

'Segment Header' description

FROM dba_segments s, v$database_block_corruption c

WHERE s.header_file = c.file#

AND s.header_block between c.block# and c.block# + c.blocks - 1

UNION

SELECT null owner,

null segment_type,

null segment_name,

null partition_name,

c.file#,

greatest(f.block_id, c.block#) corr_start_block#,

least(f.block_id + f.blocks - 1, c.block# + c.blocks - 1) corr_end_block#,

least(f.block_id + f.blocks - 1, c.block# + c.blocks - 1) -

greatest(f.block_id, c.block#) + 1 blocks_corrupted,

'Free Block' description

FROM dba_free_space f, v$database_block_corruption c

WHERE f.file_id = c.file#

AND f.block_id <= c.block# + c.blocks - 1

AND f.block_id + f.blocks - 1 >= c.block#

order by file#, corr_start_block#;

SELECT tablespace_name, segment_type, owner, segment_name

FROM dba_extents

WHERE file_id = &fileid

and &blockid between block_id AND block_id + blocks - 1;

總結(jié)

以上是生活随笔為你收集整理的oracle rman 检查坏块,Oracle中使用RMAN来检验坏块的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。