aix5.3下如何自动备份oracle10数据库 计划每天晚上11点自动export备份数据库到目录/orabk下,dmp文件名按
计划每天晚上12点自动export备份数据库到目录/orabk下,dmp文件名按日期自动生成;第二天4点自动把备份文件tar到磁带机上;...
计划每天晚上12点自动export备份数据库到目录/orabk下,dmp文件名按日期自动生成;
第二天4点自动把备份文件tar到磁带机上; 展开
第二天4点自动把备份文件tar到磁带机上; 展开
3个回答
展开全部
用一个批处理不太好做到,不过可以用两个,第一个备份第二个可以让它以电脑的系统日期做名子在指定的位置建立一个文件夹并把第一个批处理生成的备份给自动考到里面来。
以下是代码:
第一个:把备份在F盘的XX文件夹内生成一个名为1.dmp的备份文件
exp hx_oracle/oracle@oracl file=E:\XX\1.dmp log=E:\XX\1.log owner=sq_wms buffer=10000000
第二个:在E盘建一个以当前日期和时间为文件名的文件夹并把E盘XX文件夹内的所有文件考到E盘XXX文件夹内
@echo off
set "riqi=%date:~0,10% %time:~0,2%_%time:~3,2%"
md "E:\XXX\%riqi%"
move "E:\XX\*.*" "E:\XXX\%riqi%"
以下是代码:
第一个:把备份在F盘的XX文件夹内生成一个名为1.dmp的备份文件
exp hx_oracle/oracle@oracl file=E:\XX\1.dmp log=E:\XX\1.log owner=sq_wms buffer=10000000
第二个:在E盘建一个以当前日期和时间为文件名的文件夹并把E盘XX文件夹内的所有文件考到E盘XXX文件夹内
@echo off
set "riqi=%date:~0,10% %time:~0,2%_%time:~3,2%"
md "E:\XXX\%riqi%"
move "E:\XX\*.*" "E:\XXX\%riqi%"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
oracle sid为:aaa,用户名密码为:bbb/bbb,aix系统对应oracle数据库的用户名密码为:oracle/oracle
1、以root登陆aix,在/bin下vi expbbb.sh,内容为:
#!/bin/sh
ORACLE_HOME=/u01/product/9.2.0;
export ORACLE_HOME
ORACLE_SID=aaa;
export ORACLE_SID
LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/lib32:/usr/lib;
export LD_LIBRARY_PATH
ORACLE_TERM=dtterm;
export ORACLE_TERM
PATH=/usr/bin:/etc:/usr/sbin:/usr/ucb:$ORACLE_HOME/bin:$HOME/bin:/usr/bin/X11:/sbin:.;
export PATH
DISPLAY=local:0.0;
export DISPLAY
NLS_LANG=american_america.zhs16gbk;
export NLS_LANG
rq='date +"%m%d"'
su - oracle -c "exp bbb/bbb@实例名 owner=bbb file=/orabk/bbb$rq.dmp"
2、chmod u+x expbbb.sh
3、以root重新登陆aix,直接运行expbbb.sh,可以在/orabk中生成bbb0123.dmp
4、以root登陆aix,cd /var/spool/cron/crontabs
5、运行crontab -e,在出现的编辑界面中选择open,选择打开/var/spool/cron/crontabs/root
发现里面是空白的,计划测试在12点50分自动启动备份脚本,添加如下一行:
50 11 * * * /bin/expbbb.sh
6、保存上述内容,以root重新登陆,运行crontab -l,显示如下:
50 11 * * * /bin/expbbb.sh#
7、从第二天开始,就会自动备份了。
1、以root登陆aix,在/bin下vi expbbb.sh,内容为:
#!/bin/sh
ORACLE_HOME=/u01/product/9.2.0;
export ORACLE_HOME
ORACLE_SID=aaa;
export ORACLE_SID
LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/lib32:/usr/lib;
export LD_LIBRARY_PATH
ORACLE_TERM=dtterm;
export ORACLE_TERM
PATH=/usr/bin:/etc:/usr/sbin:/usr/ucb:$ORACLE_HOME/bin:$HOME/bin:/usr/bin/X11:/sbin:.;
export PATH
DISPLAY=local:0.0;
export DISPLAY
NLS_LANG=american_america.zhs16gbk;
export NLS_LANG
rq='date +"%m%d"'
su - oracle -c "exp bbb/bbb@实例名 owner=bbb file=/orabk/bbb$rq.dmp"
2、chmod u+x expbbb.sh
3、以root重新登陆aix,直接运行expbbb.sh,可以在/orabk中生成bbb0123.dmp
4、以root登陆aix,cd /var/spool/cron/crontabs
5、运行crontab -e,在出现的编辑界面中选择open,选择打开/var/spool/cron/crontabs/root
发现里面是空白的,计划测试在12点50分自动启动备份脚本,添加如下一行:
50 11 * * * /bin/expbbb.sh
6、保存上述内容,以root重新登陆,运行crontab -l,显示如下:
50 11 * * * /bin/expbbb.sh#
7、从第二天开始,就会自动备份了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个问题问的比较专业,涉及到两个方法的内容,1、.sh备份脚本的制作;2、crontab计划任务的添加。
Sybase的自动脚本做过,ORAcle的数据库没做过,不敢给你乱说。你可以到www.loveunix.net上发贴问下,那里高手云集,肯定能找到你要的结果。
祝你成功!
Sybase的自动脚本做过,ORAcle的数据库没做过,不敢给你乱说。你可以到www.loveunix.net上发贴问下,那里高手云集,肯定能找到你要的结果。
祝你成功!
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询