LINUX 自动备份脚本
发布网友
发布时间:2022-04-24 01:35
我来回答
共6个回答
热心网友
时间:2022-04-08 23:10
您好,我刚接触LINUX还没有接触到ORACLE去,我纯粹说一下这个脚本,半斤八两的嘎嘎。
ORACLE_HOME=/u/proct/oracle816; export ORACLE_HOME
LD_LIBRARY_PATH=/u/proct/oracle816/lib; export LD_LIBRARY_PATH
ORACLE_BASE=/u/proct; export ORACLE_BASE
ORACLE_SID=man; export ORACLE_SID
ORA_NLS33=/u/proct/oracle816/ocommon/nls/admin/data; export ORA_NLS33
PATH=$PATH:/u/proct/oracle816/bin; export PATH
CDPATH=$PATH:$ORACLE_HOME:/u; export CDPATH
NLS_LANG='traditional chinese_taiwan'.ZHT16BIG5; export NLS_LANG
#NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1;export NLS_LANG
NLS_DATE_FORMAT='DD-MM-YYYY HH24:MI:SS';export NLS_DATE_FORMAT
LD_ASSUME_KERNEL=2.4.0; export LD_ASSUME_KERNEL
这一段都是“;”前面声明变量,“;”后输出变量,输出的目的是可以传递给下一级的脚本(子进程)。
alias rman='/u/proct/oracle816/bin/rman'
这个就是给/u/proct/oracle816/bin/rman取一个别名rman,其好处再简单不过,名字太长当然希望用较短的代替很长的输入了。
extfile=`date '+%w_%p_%H_%M'`
这也是声明变量extfile,等号右边是一个命令替换,比如现在是2007年4月29日星期天,15:55那么这个extfile应该是0_PM_3_55 具体你看下date的MAN文档就是了。
%w是参数week,它是用0-6来表示星期日-星期六
%p 它是指用12小时制来表示一天的时间的时候上午或者下午AM or PM
%H 小时
%M 分钟
#rm -rf /www/exp/data/b735data*.*
这个是强制的删除/www/exp/data/下的以b735data开头并带有任意后缀的文件。但是被#号注释掉了,脚本里以#开头的都是注释。
exp foxmold/foxmold file=/www/exp/script/b735data.$extfile compress=y full=y log=n
这些是数据库里的东西了我不懂你去搜下exp命令的用法吧。
mv /www/exp/script/b735data.$extfile /www/exp/data/.
Mv 移动文件的命令。
#rcp /exp/data/data.$extfile 10.160.6.42:/backup/apple_backup
同样被注释掉了,rcp是远程复制命令。
sh DATAexport
执行脚本
重申因为我不懂oracle所以只纯粹说这个脚本哦 呵呵。
热心网友
时间:2022-04-09 00:28
用scp,rcp,rsync,tar都可以,你现在的需要只要简单的写个命令就可以了,还用不到脚本。
你要更透彻的理解备份的话,多看看tar的使用,或者下一个Amanda来玩吧。
定时当然要在Crontab里做文章了,看看这里先
http://ke.baidu.com/view/1229061.htm
热心网友
时间:2022-04-09 02:03
直接scp过去不就得了?为什么还要用脚本啊?
你man一下scp就知道了,如果实在要用脚本,那写一行scp就行~
热心网友
时间:2022-04-09 03:54
楼主似乎没提到oracle哦。
热心网友
时间:2022-04-09 06:02
将windows共享文件挂载到本地,然后用rsync进行同步
热心网友
时间:2022-04-09 08:27
没看明白....要干什么?备份脚本?