ITPub博客

首页 > 数据库 > Oracle > oracle 热备脚本 .

oracle 热备脚本 .

原创 Oracle 作者:Aminiy 时间:2013-12-02 15:11:37 0 删除 编辑

此脚本只使用与文件系统上面的数据库,只是简单的脚本,不适合带库上的oracle,那个需要小小的改动。

#!/bin/bash
source ~/.bash_profile
export NLS_LANG=AMERICAN_AMERICA.UTF8

#定义时间
TIME=`date +%Y-%m-%d[%R]`

#清空SQL语句
>/tmp/hotbak.sql

#热备目录
dir =/tmp/hotback

#备份目录
dir_bak = /tmp/hot

#登陆sqlplus
sqlplus -S /nolog<>rizhi.log
connect / as sysdba;
set heading off
set verify off
set trimspool off
set pagesize 0
set linesize 200          
spool /tmp/hotbak.sql
select ' cp ' ||name|| ' /tmp/hot'  from v$datafile;
spool off
alter database begin backup;
start /tmp/hotbak.sql
alter database end backup;
alter database backup controlfile to '/tmp/hot/controlbak.ctl';
create pfile = '/tmp/hot/initorcl.ora' from spfile;
quit
EOF
exit

cd $dir_bak
ls * |while read line
do
        cp $line $dir/$line_${TIME}
done

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/24492954/viewspace-1061862/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 何去何从
下一篇: sed用法总结
请登录后发表评论 登录
全部评论

注册时间:2011-04-09

  • 博文量
    41
  • 访问量
    239384