天天看点

Windows平台下Oracle 自动备份的实现备份的步骤。实现步骤总结

  20080125补充以下:exp.cfg.txt中的buffer不要太大,我没有修改资源的权限。 

备份的步骤。

1、导出oracle数据dmp文件 2、压缩dmp文件 3、通过ftp上传备份的数据文件

实现步骤

1、Oracle数据导出配置文件 2、备份文件上传配置文件 3、备份oracle数据、压缩、上传批处理文件  

一、导出Oracle数据到dmp文件

1、oralce数据导出脚本参数文件 数据导出脚本参数文件为exp.cfg.txt。关于exp的更多参数请运行exp –help 查询。

#zhaohonghui Userid = host/[email protected] #buffer = 999999999 rows = n file = data/data.dmp #导出用户的表 owner = (  host ) #需要导出的表名 #tables=( # table1, # table2 #) log = data/data.log  

2、导出oracle数据 使用命令exp –parfile=exp.cfg.txt  

二、压缩文件

需要本机安装winrar压缩软件。对于rar的更多信息,请运行rar /? 查询。 C:/PROGRA~1/WinRAR/rar a –agYYYYMMDDHHMMSS archive/data.rar *.dmp *.log 参数说明: –agYYYYMMDDHHMMSS ,是在压缩后的文件名中增加日期时间。  

三、上传文件到ftp

1、ftp上传配置文件ftp.cfg.txt

open 127.0.0.1 username password cd /backup/data lcd data send *.rar bye   ---- zhaohonghui  

注释 open 127.0.0.1(ftp服务器的地址) username(ftp服务器的用户名) password(ftp服务器的密码) cd /backup/data(ftp服务器上备份文件的存放路径) lcd data(本地需要上传的文件路径) send *.rar(要上传的本地文件) bye(关闭ftp链接)   2、ftp上传命令 ftp < ftp.cfg  

四、批处理文件

调用exp、rar、ftp等的批处理文件backdata.bat。

@echo off @rem zhaohonghui del baklog.log /Q exp parfile = exp.cfg.txt >> baklog.log rar a -agYYYYMMDDHHMMSS -idp data/data.rar data/*.dmp data/*.log >> baklog.log ftp -s:ftp.cfg.txt >> baklog.log move data/*.rar archive

五、添加到Windows计划任务

在每一天的晚上23:00开始执行计划任务。

C:/>at 23:00 /every:M,T,W,Th,F,S,Su c:/bak/backdata.bat 新加了一项作业,其作业 ID = 1

六、最终目录结构

目录结构

C:/BAK |    backdata.bat |    baklog.log (自动生成) |    exp.cfg.txt |    ftp.cfg.txt |    rar.exe | +---archive |        data20071005153016.rar(自动生成) | /---data         data.dmp(自动生成)         data.log(自动生成)  

总结

尚未实现unix平台下的自动备份,对于unix平台只需要解决压缩和ftp就可以了。 下载可用压缩包(已经包含所有的可用文件)。--> http://download.csdn.net/hicsdn/z3h