您好,登錄后才能下訂單哦!
這篇文章主要介紹“用Oracle RMAN備份的方法是什么”,在日常操作中,相信很多人在用Oracle RMAN備份的方法是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”用Oracle RMAN備份的方法是什么”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
數據庫周期:
周一0級備份,周二、周三2級備份,周四1級備份,周五、六、日2級備份。
歸檔備份周期:
每小時備份一次
腳本如下:
###啟動歸檔###
[root@cjcos01 ~]# mkdir /rman/{db,arch} -p [root@cjcos01 ~]# chown oracle.oinstall /rman -R [root@cjcos01 ~]# su - oracle [oracle@cjcos01 ~]$ sqlplus / as sysdba SQL> alter system set log_archive_dest_1='location=/rman/arch'; SQL> alter system set log_archive_format = "cjcpdb_%t_%s_%r.arc" scope=spfile; SQL> shutdown immediate; SQL> startup mount; SQL> alter database archivelog; SQL> alter database open; SQL> archive log list;
###創建測試數據###
SQL> conn cjc/*** SQL> CREATE OR REPLACE PROCEDURE test_pro is begin for i in 1 .. 10 loop insert into t1 values (i, to_char(sysdate, 'yyyy/mm/dd hh34:mi:ss')); commit; end loop; end; /
周一:0級備份
###0_rmanbak.sh begin### export NLS_DATE_FORMAT='yyyy-mm-dd hh34:mi:ss' export ORACLE_SID=cjcdb01 rman target / log=/rman/db/0_rmanbak.log <<EOF run{ allocate channel ch2 type disk maxpiecesize 1000M; allocate channel ch3 type disk maxpiecesize 1000M; backup incremental level = 0 filesperset = 32 format '/rman/db/lev0_%d_%T_%U.bak' skip inaccessible database include current controlfile tag '0_rmanbak_cjcdb' ; release channel ch2; release channel ch3; } EOF exit ###0_rmanbak.sh end###
周二、三:2級別備份
###2_rmanbak.sh begin### export NLS_DATE_FORMAT='yyyy-mm-dd hh34:mi:ss' export ORACLE_SID=cjcdb01 rman target / log=/rman/db/2_rmanbak.log <<EOF run{ allocate channel ch2 type disk maxpiecesize 1000M; allocate channel ch3 type disk maxpiecesize 1000M; backup incremental level = 2 filesperset = 32 format '/rman/db/lev2_%d_%T_%U.bak' skip inaccessible database include current controlfile tag '2_rmanbak_cjcdb' ; release channel ch2; release channel ch3; } EOF exit ###2_rmanbak.sh end###
周四:1級備份
###1_rmanbak.sh begin### export NLS_DATE_FORMAT='yyyy-mm-dd hh34:mi:ss' export ORACLE_SID=cjcdb01 rman target / log=/rman/db/1_rmanbak.log <<EOF run{ allocate channel ch2 type disk maxpiecesize 1000M; allocate channel ch3 type disk maxpiecesize 1000M; backup incremental level = 1 filesperset = 32 format '/rman/db/lev1_%d_%T_%U.bak' skip inaccessible database include current controlfile tag '1_rmanbak_cjcdb' ; release channel ch2; release channel ch3; } EOF exit ###1_rmanbak.sh end###
周五、六、日:2級備份
###2_rmanbak.sh begin### export NLS_DATE_FORMAT='yyyy-mm-dd hh34:mi:ss' export ORACLE_SID=cjcdb01 rman target / log=/rman/db/2_rmanbak.log <<EOF run{ allocate channel ch2 type disk maxpiecesize 1000M; allocate channel ch3 type disk maxpiecesize 1000M; backup incremental level = 2 filesperset = 32 format '/rman/db/lev2_%d_%T_%U.bak' skip inaccessible database include current controlfile tag '2_rmanbak_cjcdb' ; release channel ch2; release channel ch3; } EOF exit ###2_rmanbak.sh end###
歸檔備份:每小時備份一次
###arch_rmanbak.sh begin### export NLS_DATE_FORMAT='yyyy-mm-dd hh34:mi:ss' export ORACLE_SID=cjcdb01 rman target / log=/rman/db/arch_rmanbak.log <<EOF run{ allocate channel ch2 type disk maxpiecesize 1000M; allocate channel ch3 type disk maxpiecesize 1000M; sql "alter system archive log current"; backup filesperset = 32 format '/rman/db/arch_%d_%T_%U.bak' skip inaccessible archivelog all delete input tag 'arch_cjcdb'; backup format='ctl_%d_%T_%U.ctl' current controlfile ; release channel ch2; release channel ch3; } EOF exit ###arch_rmanbak.sh end###
到此,關于“用Oracle RMAN備份的方法是什么”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。