這篇文章給大家分享的是有關(guān)oracle rman如何在線熱備份的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
成都創(chuàng)新互聯(lián)公司是專業(yè)的興國網(wǎng)站建設(shè)公司,興國接單;提供成都網(wǎng)站制作、成都網(wǎng)站建設(shè),網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進行興國網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!
以下是我給出的一些關(guān)于備份的建議,作為dba,rman備份策略思路考慮以下方面:
1、歸檔日志的重要性,例如是否需要經(jīng)常找回歷史較久歸檔日志分析。
2、總的備份空間大小考慮,當(dāng)時空間足夠的情況,盡量保留多點備份,如果庫較小,但是產(chǎn)生的歸檔較多,可能幾天的歸檔就超過了你的真?zhèn)€庫的大小了,建議全備份的跨期縮短。
3、盡量留兩次以上的全備份,而且是最好是備完再刪除歷史備份。
以下是腳本內(nèi)容,分別是歸檔日志備份和數(shù)據(jù)庫文件全備腳本,一旦發(fā)生問題時,可通過恢復(fù)全備,并使用歸檔日志恢復(fù)到當(dāng)前。
歸檔日志備份腳本
##/opt/script/back_arch.sh
##用于平時的歸檔日志備份
. /home/oracle/.bash_profile
dt=`date +%Y%m%d`
logdir=/opt/script/log
if [ -d ${logdir} ]
then
sleep 1
else
mkdir -p $logdir
fi
logfile=${logdir}/backup_${dt}.trc
echo "------------`date '+%Y-%m-%d %H:%M'`---Start Backup----------------">>$logfile
rman target / log=$logfile <<EOF
sql 'alter system switch logfile';
crosscheck archivelog all;
crosscheck backup;
delete noprompt expired backup;
run
{allocate channel c1 type disk;
backup Archivelog all filesperset=20 Format '/bak/rman_bak/bak_arch_%s_%p_%T' delete input;
Backup current controlfile format '/bak/rman_bak/bak_ctl_%s_%p_%T';
release channel c1;
}
exit;
EOF
echo "------------`date '+%Y-%m-%d %H:%M'`---End Backup----------------">>$logfile
find ${logdir}/*.trc -ctime +20|xargs rm -f
數(shù)據(jù)庫文件全備份的腳本
##/opt/script/back_db.sh
##用于每個星期的全量日志備份
#!/bin/bash
. /home/oracle/.bash_profile
dt=`date +%Y%m%d`
logdir=/opt/script/log
if [ -d ${logdir} ]
then
sleep 1
else
mkdir -p ${logdir}
fi
logfile=${logdir}/backup_${dt}.trc
echo "------------`date '+%Y-%m-%d %H:%M'`---Start Backup----------------">>$logfile
rman target / log=$logfile <<EOF
crosscheck archivelog all;
crosscheck backup;
delete noprompt expired backup;
delete noprompt obsolete; ---刪除歷史的備份
run
{
allocate channel c1 type disk;
allocate channel c2 type disk;
backup as compressed backupset Database
Format '/bak/rman_bak/bak_db_%s_%p_%T' filesperset=1
plus Archivelog filesperset=20 Format '/bak/rman_bak/bak_arch_%s_%p_%T';
Backup current controlfile format '/bak/rman_bak/bak_ctl_%s_%p_%T';
}
exit;
EOF
echo "------------`date '+%Y-%m-%d %H:%M'`---End Backup----------------">>$logfile
find ${logdir}/*.trc -ctime +20|xargs rm -fr
感謝各位的閱讀!關(guān)于“oracle rman如何在線熱備份”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
本文題目:oraclerman如何在線熱備份
路徑分享:http://jinyejixie.com/article0/iisgoo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、搜索引擎優(yōu)化、建站公司、網(wǎng)站制作、定制開發(fā)、網(wǎng)站設(shè)計公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)