① 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