Oracle 执行定时备份

利用任务计划、批处理文件和ORACLE的EXP导出功能,可以根据日期自动生成ORACLE备份文件,大大方便了ORACLE数据备份。:
1、建立批处理文件backup.bat\.
exp system/manager file=d:\backup\oracle\oracle%date:~0,10%.dmp owner=system log=d:\backup\oracle\oracle%date:~0,10%.log
将生成oracle2006-01-09.dmp文件
exp system/manager file=d:\backup\oracle\oracle%date:~11,3%.dmp owner=system log=d:\backup\oracle\oracle%date:~11,3%.log
将生成oracle星期一.dmp文件,则每周循环保留一个备份文件,共7个备份文件循环
2、添加一个任务计划
利用任务计划向导,根据备份策略设置自动执行任务的时间频率(例如每天零时),执行d:\oracle\backup.bat
3、以后每天将在目录中生成形如“oracle2005-08-31.dmp和oracle2005-08-31.log”的备份和日志文件。
说明:
1、%date%的值在不同的系统、语言版本下可能是不一样的,控制面板里面区域选项的设定也会改变%date%的值。请先在命令行中测试 echo %date% 的返回值。%date:~4,10% 是返回日期函数,~后的第一个参数是要截取的起始位置(从0开始),第二个参数是要截取的长度,如没有则是截取到最后,参数可酌情修改。

2、如需要准确的时间做为文件名,请用%time%函数,参数同上。

具体方法:

在windows下实现对oracle数据库的定时备份
1、确定你的计算机上装有oracle的客户端,如果没有,请安装oracle客户端
2、确定有你的oracle服务里有你要需要备份的数据库的服务名。我这里的服务名是example,数据库名
  test,密码为:testpw。
3、制作一个批处理文件(oracleBackup.bat),具体方法:打开“记事本”,保存为oracleBackup.bat,
  此时保存的文件类型选择为“所有文件”。我的保存目录为:d:\oracleBackup.bat。oracle客户端安装
  在d:\oracle目录下。
4、右键点击此文件(oracleBackup.bat),选择“编辑”,进入编辑状态:
  a、cd oracle\ora92\bin        //进入exp命令的目录下面。
  b、exp test/testpw@example file=d:/%DATE:~4,10%.dmp log=d:/%DATE:~4,10%.log
          //%DATE:~4,10%代表取系统日期(windows系统doc命令),例如:2005-12-01。用日期来
   作为备份的数据文件名和日志名,用来保证文件名不重复。以上备份文件我保存在d:下面,保存
   目录自己设置。
  c、保存文件。
5、在windows计划任务(开始-程序-附件-系统工具-任务计划)中添加任务计划,选择“任务计
  划”时,点击“浏览”,选择自己的计划(即oracleBackup.bat文件),确定就行了。以下设置根据自
  需要设置就行了。
6、这样就制作好自己的oracle数据库备份计划了


Linux下Oracle定时备份设置方法  
以备份coinfo库为例,备份时间为每间隔10分钟一次。  在公司服务器上测试成功。  
1、建立脚本/home/share/backup,脚本内容如下: 
su - oracle -c "exp coinfo/coinfo file=/home/Share/test.dmp"  2、修改脚本执行权限 
chmod 775 /home/share/backup 
3、配置crontab,设置定时执行脚本  crontab -e 
写入以下命令: 
*/10 * * * * "/home/share/backup"  保存,完成设置。   
注:crontab在执行任务时不会载入用户的环境变量,因此即使给oracle用户添加任务来备份数据库也需要手动导入环境变量,否则无法执行数据库备份命令。 
网上有资料说要导入以下3个环境变量  export ORACLE_SID  export ORACLE_HOME  export PATH 
在脚本中导入以上3个环境变量后在公司服务器上试验给oracle添加任务仍然不能执行数据库备份命令。   
此备份方式通过crontab为root用户添加定时任务来完成数据库的备份。  备份脚本中"su - oracle"可以导入oracle用户的环境变量,注意 " -" 必须添加,否则环境变量不会导入。    
附crontab使用方法简述  
名称   :   crontab    
使用权限   :   所有使用者     使用方式   :        
  crontab   [   -u   user   ]   filecrontab   [   -u   user   ]   {   -l   |   -r   |   -e   }    


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值