oracle 資料庫中壞塊概念和檢查指令碼

paulyibinyi發表於2009-06-30

 $ more /temp/dbvrman.sh
#!/bin/ksh
#set env
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=/opt/oracle/product/10.2.0/db_1
export ORACLE_SID=orcl
export NLS_LANG="AMERICAN_AMERICA.zhs16gbk"
export PATH=$PATH:$ORACLE_HOME/bin
echo "-----------------------------start-----------------------------";date
#RMAN to verify datafile
$ORACLE_HOME/bin/rman target /<connect catalog
spool log to /temp/dbvrman.log

run {
allocate channel t1 type DISK;
allocate channel t2 type DISK;
backup filesperset 15 validate check logical database;
release channel t1;
release channel t2;
 }
exit;
EOF
echo "------------------------------end------------------------------";date
$
$

 塊檢查:CHECK LOGICAL 選項MAXCORRUPT引數 V$COPY_CORRUPTION在複製操作中,Oracle 伺服器程式對每個塊執行校驗和計算以檢測是否有塊損壞。 RMAN 在還原副本時也要核對校驗和. 該過程稱為物理損壞檢測. 可以使用NOCHECKSUM 選項取消校驗和操作,從而加快複製程式。如果資料庫已在維護塊校驗和,則此選項無效。預設情況下,禁用邏輯損壞的錯誤檢查。

    可以使用 CHECK LOGICAL 選項測試透過了物理損壞檢查的資料和索引塊,檢視它們是否存在邏輯損壞,如行片或索引條目損壞。如果檢測到任何塊存在邏輯損壞,則 將該塊記錄到伺服器程式的警報日誌和跟蹤檔案中。

    可以使用 MAXCORRUPT 引數設定邏輯和物理損壞的閾值。只要在某個檔案中檢測到的邏輯和物理損壞總和低於該值,則 RMAN 命令完成,同時 Oracle 將損壞塊的 範圍植入到 V$COPY_CORRUPTION 檢視。如果超出 MAXCORRUPT,則該命令終 止,並且不植入檢視。 當並行度比較高時,佔用的計算機資源較多,但備份操作完成 速度較快。預設情況下將啟用對物理損壞的錯誤檢查。有關在備份過程中遇到的損壞資料檔案塊的資訊將記錄在控制檔案和警報日誌中。


 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7199859/viewspace-607960/,如需轉載,請註明出處,否則將追究法律責任。

相關文章