① linux下RMAN備份腳本問題<二>
。。。你說的都對了
1、 「unset」 就是取消後面的變數
2、 「!」 就是取反,如果你那個目錄不存在,就創建它
3、 「$?」 這個的意思你可以去試試,執行一次錯誤的命令然後「echo $?",然後再執行一次正確的命令再」echo $?「,它的作用就是返回上一次命令的執行結果
② linux 下 oracle 10g 使用rman 每周執行一次 自動備份腳本如何編寫 希望能有解釋。
crontab -e
0 0 0 0 0 /script_path/your_backup_script.sh
每周日零時自動執行
③ rman備份腳本和rman增量備份腳本分享
一、單獨備份
1、經典整庫備份:backup
as
compressed
backupset
database
include
current
controlfile
plus
archivelog
delete
all
input;
2、tablespace:backup
tablespace
名字;
3、數據文件:backup
datafile
n;
(n:具體的數據文件編號select
file_name,file_id,tablespace_name
from
dba_data_files;)
4、控制文件:backup
current
controlfile;或者backup
database
include
current
controlfile;
5、日誌文件:backup
archivelog
all;或者
database
plus
archivelog;
6、參數文件:backup
spfile;
7、全庫備份腳本:
復制代碼
代碼如下:
run{
allocate
channel
c1
type
disk;
backup
full
tag
『dbfull'
format
『/backup/full%u_%s_%p'
database
include
current
controlfile;
sql
『alter
system
archive
log
current';
#在資料庫進行全備份完成之後,需要執行該條命令將當前日誌歸檔,備份歸檔日誌時應該包括最後生成的歸檔
backup
filesperset
3
format
『/backup/arch%u_%s_%p'#filesperset
3設定每個備份集里文件不超過3個
archivelog
all
delete
input;
#備份歸檔可選,可以單獨定期備份
release
channel
c1;
}
二、增量備份
1、0級增量備份
復制代碼
代碼如下:
run{
allocate
channel
c1
type
disk;
backup
incremental
level
0
tag
『db0'
format
『/backup/db0%u_%s_%p'database
include
current
controlfile;
;
sql
'alter
system
archive
log
current';#在資料庫進行全備份完成之後,需要執行該條命令將當前日誌歸檔,備份歸檔日誌時應該包括最後生成的歸檔
backup
filesperset
3
format
『/backup/arch%u_%s_%p'#filesperset
3設定每個備份集里文件不超過3個
archivelog
all
delete
input;
#備份歸檔可選,可以單獨定期備份
release
channel
c1;
}
2、1級備份腳本
復制代碼
代碼如下:
run{
allocate
channel
c1
type
disk;
backup
incremental
level
1
tag
『db1'
format
『/backup/db1%u_%s_%p'
database
skip
readonly
include
current
controlfile;
backup
filesperset
3
format
『/backup/arch%u_%s_%p'#filesperset設定每個備份集里文件不超過3個
archivelog
all
delete
input;
#備份歸檔可選,可以單獨定期備份
release
channel
c1;
}
④ linux下oracle10G的rman備份及恢復,因為是初學,請寫出詳細腳本及步驟解釋
http://wenku..com/view/d0569e4ae45c3b3567ec8b3c.html
⑤ 如何在linux里自動進行rman備份
先寫一shell script 調用rman備份,當在命令行下可以成功地運行並按你的要求備份了資料庫後,再建一cron job,按時運行你的script。
⑥ crontab計劃任務時,rman腳本無法執行,但是定時執行echo "hello world"腳本就能執行!怎麼回事啊!
還是目錄問題,用腳本獲取絕對aaa.sh的絕對路徑。
如在start.sh中獲取絕對路徑,寫入crontabFile的文件,然後在start.sh中調用crontab crontabFile