Oracle替换sed 变量替换使用这么麻烦?

Oracle11g新特性:RMAN脚本中使用替换变量
11g新特性:RMAN脚本中使用替换变量
Oracle11g出了一个新特性,在RMAN脚本中使用替换变量。今天我在服务器端做了个小实验,尝试了下这个特性,虽然出了一些错,不过都解决啦!感觉这个特性还是不错的,下面进入正题。
1.创建放脚本和备份文件的目录
$mkdir -p oraclescripts/backup/dynamic
$mkdir /u01/backupfiles
2.创建相关脚本
$cd /u01/oraclescripts/backup/dynamic
$vi backup.cmd
加入下面命令:&
#backup.cmd &
connect target / &
backup datafile 5 &
format '&2'; &
这是一个RMAN命令,一会用shell脚本来调用它,下面创建shell脚本:
$vi nightly_backup.sh
加入下面命令:
#!/bin/bash &
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号数据文件,大家可以自定义备份策略。博客访问: 925493
博文数量: 381
注册时间:
认证徽章:
分类: Oracle 10:28:02
每次引用,都需要声明一次
SQL& select * from &
Enter value for test: dual
old&& 1: select * from &test
new&& 1: select * from dual
SQL& select * from &
Enter value for test: dual
old&& 1: select * from &test
new&& 1: select * from dual
SQL& select * from &
Enter value for test: dual
old&& 1: select * from &test
new&& 1: select * from dual
SQL& select * from &
Enter value for test: dual
old&& 1: select * from &test
new&& 1: select * from dual
SQL& select * from &
Enter value for test: dual
old&& 1: select * from &test
new&& 1: select * from dual
存在于整个会话中,只需声明一次
SQL& select * from &&
Enter value for test: dual
old&& 1: select * from &&test
new&& 1: select * from dual
SQL& select * from &&
old&& 1: select * from &&test
new&& 1: select * from dual
关于变量中点号"."的使用
在变量和字符串在一起的时候,需要通过"."来区别声明变量和字符串,否则SQL Plus会将连在一起的变量和字符串当成另外一个变量
SQL& DEFINE POS = MANAGER
SQL& DEFINE DEPARTMENT_ID = 20
SQL& select '&&POS'
old&& 1: select '&&POS' from dual
new&& 1: select 'MANAGER' from dual
--------------
SQL& select '&&DEPARTMENT_ID'
old& &1: select '&&DEPARTMENT_ID'
new&& 1: select '20' from dual
SQL& select '&&POS&&DEPARTMENT_ID'
old&& 1: select
'&&POS&&DEPARTMENT_ID' from dual
new&& 1: select 'MANAGER20' from dual
'MANAGER20'
------------------
SQL& select
'&&POS.&&DEPARTMENT_ID'
old&& 1: select
'&&POS.&&DEPARTMENT_ID' from dual
new&& 1: select 'MANAGER20' from dual
'MANAGER20'
------------------
SQL& select
'&&POS..&&DEPARTMENT_ID'
old&& 1: select
'&&POS..&&DEPARTMENT_ID' from dual
new&& 1: select 'MANAGER.20' from dual
'MANAGER.20'
--------------------
MANAGER.20
SQL& define
REQUEST_RRS_INDX_TBS="REQUEST_RRS_INDX"
SQL& select '&&REQUEST_RRS_INDX_TBS._00.dbf'
old&& 1: select
'&&REQUEST_RRS_INDX_TBS._00.dbf' from dual
new&& 1: select
'REQUEST_RRS_INDX_00.dbf' from dual
'REQUEST_RRS_INDX_00.DBF'
----------------------------------------------
REQUEST_RRS_INDX_00.dbf
SQL& select '&&REQUEST_RRS_INDX_TBS_00.dbf'
Enter value for request_rrs_indx_tbs_00:
old&& 1: select
'&&REQUEST_RRS_INDX_TBS_00.dbf' from dual
new&& 1: select 'dbf' from
阅读(1046) | 评论(0) | 转发(0) |
相关热门文章
给主人留下些什么吧!~~
请登录后评论。没有更多推荐了,
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!没有更多推荐了,
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!oracle如何屏蔽或者替代变量?_百度知道
oracle如何屏蔽或者替代变量?
我有更好的答案
set define off
采纳率:100%
为您推荐:
其他类似问题
您可能关注的内容
oracle的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。

我要回帖

更多关于 java 字符串变量替换 的文章

 

随机推荐