欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Oracle 11g新特性:RMAN脚本中使用替换变量

程序员文章站 2024-01-12 12:42:52
...

Oracle 11g出了一个新特性,在RMAN脚本中使用替换变量。今天我在服务器端做了个小实验,尝试了下这个特性,虽然出了一些错,不过

Oracle 11g出了一个新特性,在RMAN脚本中使用替换变量。今天我在服务器端做了个小实验,尝试了下这个特性,虽然出了一些错,不过都解决啦!感觉这个特性还是不错的,下面进入正题。

1.创建放脚本和备份文件的目录

$cd /u01

$mkdir -p oraclescripts/backup/dynamic

$mkdir /u01/backupfiles

2.创建相关脚本

$cd /u01/oraclescripts/backup/dynamic

$vi backup.cmd

加入下面命令:

#backup.cmd
connect target /
run{
backup datafile 5
tag=&1
format '&2';
}
exit;

这是一个RMAN命令,一会用shell脚本来调用它,下面创建shell脚本:

$vi nightly_backup.sh

加入下面命令:

#!/bin/bash

tag=$1
format=$2
rman @backup.cmd using $tag $format

OK,我们去执行这个shell脚本,

$sh nightly_backup.sh testtag \'/u01/backupfiles/file5.bk\'

我用两个参数,第一个是Tag,第二个是要备份的路径。shell脚本取到两个参数后,在执行@backup.cmd时,,把这两个参数传入到&1和&2,我这个实验是备份5号数据文件,大家可以自定义备份策略。

这个实验虽小,可我做得也是困难重重,google了好几遍,比如传参时,要用\转义,tag后要加=号等等,总之,实验虽小,但学到了很多,这里我分享给大家,希望对新手有帮助。我的参考资料是《RMAN Recipes for Oracle Database 11g》中的第四章第10节。

RMAN Recipes for Oracle Database 11g pdf下载见