利用sqlplus指令碼刪除備庫歸檔
一般而言,這種備份或者刪除歸檔的指令碼都是透過作業系統上的shell指令碼實現,不過如果shell不是很熟,類似的功能完全可以利用sqlplus指令碼實現。
一個9204RAC的DATA GUARD環境的STANDBY資料庫上的例子。
一共需要建立3個檔案,此外還有一個在呼叫指令碼過程中生成的檔案,第一個檔案sql.sh用來執行sqlplus命令,並最終呼叫生成後的指令碼:
sqlplus system/password@primary_db
<< EOF
@execute.sql
EOF
chmod 755 delete_archivelog.sh
./delete_archivelog.sh
第二個檔案execute.sql用來設定輸出的格式,並呼叫最終指令碼檔案:
set pages 0 lines 100 feedback off
ver off echo off trims on trim on show off term off
spo delete_archivelog.sh
@@call.sql
spo off
最後一個檔案call.sql利用sql拼出rman刪除歸檔的命令,因為是RAC環境,因此需要對兩個THREAD分別進行刪除:
select
'/u01/oracle/product/9.2.0.4/bin/rman target / << EOF' from dual;
select 'delete noprompt archivelog until sequence ' || (max(sequence#) - 10) ||
' thread ' || thread# || ';'
from v$archived_log
where dest_id = 2
and applied = 'YES'
group by thread#;
select 'EOF' from dual;
最後將sql.sh指令碼新增到crontab中,使得系統可以定時呼叫。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4227/viewspace-697945/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【轉載】Oracle Data Guard 備庫 歸檔檔案 刪除指令碼Oracle指令碼
- dg刪除備庫已經應用的歸檔日誌指令碼指令碼
- 定期刪除歸檔檔案的指令碼指令碼
- ORACLE NBU調取oracle rman指令碼備份歸檔不自動刪除歸檔Oracle指令碼
- DATAGUARD_standby刪除歸檔日誌的指令碼指令碼
- Oracle DG standby刪除歸檔的判斷指令碼Oracle指令碼
- RAC 節點2刪除自己的歸檔指令碼指令碼
- DataGuard已應用歸檔日誌刪除指令碼指令碼
- 備庫歸檔刪除策略失效的問題分析
- 指令碼定期自動刪除ASM下的歸檔檔案指令碼ASM
- Oracle 11g 自動刪除ASM歸檔檔案指令碼OracleASM指令碼
- 備庫自動刪除已應用的歸檔日誌
- 刪除資料庫指令碼資料庫指令碼
- ORACLE刪除歸檔Oracle
- 定時刪除檔案指令碼指令碼
- Rman Crosscheck刪除失效歸檔-備份恢復ROS
- RMAN備份歸檔日誌指令碼指令碼
- 【ARCH】留存,Oracle11g之前Dataguard環境刪除歸檔指令碼Oracle指令碼
- Oracle Data Guard 主庫歸檔檔案刪除策略Oracle
- Oracle Data Guard 主庫 歸檔檔案 刪除策略Oracle
- DELETE OBSOLETE不刪除歸檔日誌以及歸檔的備份集delete
- 誤刪歸檔日誌除導致備份歸檔日誌失敗
- 利用PHP指令碼刪除MySQL上所有的表PHP指令碼MySql
- Oracle 11g Data Guard 備庫歸檔日誌清理指令碼(保留一週歸檔)Oracle指令碼
- 自動刪除歸檔日誌的指令碼(尤其是dataguard環境)指令碼
- 歸檔模式下熱備原理及指令碼模式指令碼
- 手工rm刪除歸檔日誌對備份歸檔日誌的影響
- Oracle Data Guard 主庫 歸檔檔案 刪除策略--續Oracle
- 強制刪除歸檔檔案
- 刪除歸檔日誌檔案
- 利用rman全備恢復刪除的資料庫資料庫
- 無備份恢復(歸檔模式)已刪除資料檔案模式
- 刪除歸檔物理檔案備份失敗!ORA-19625
- oracle刪除歸檔日誌Oracle
- 歸檔日誌的刪除
- Rman Crosscheck刪除失效歸檔ROS
- Oracle歸檔日誌刪除Oracle
- 【轉載】Oracle Data Guard 主庫 歸檔檔案 刪除策略Oracle