日期:2014-05-16 浏览次数:20413 次
由于测试数据库服务器环境不太稳定,可能会断电。因此需要在本地每天定时备份下数据库。由于在windows环境,所以研究了下批处理编程,写了个小备份批处理。同时设置了计划任务,每天会定时运行bat进行数据库备份。以下是批处理代码,直接新建个txt,内容如下:
@echo off set txt1=%date:~0,4% ::当前年 set txt2=%date:~5,2% ::当前月 set txt3=%date:~8,2% ::当前日 set txt4=%time:~0,2% ::当前小时 set txt5=%time:~3,2% ::当前分钟 set txt6=%time:~6,2% set day=%txt3: =% set date=%txt1%%txt2%%day% set time=%txt4%%txt5%%txt6% set name=%date: =-% echo -------------------------------------------------- echo -------------正在执行oracle数据库备份-------------- echo -------------------------------------------------- echo ... echo ... echo 导出oracle数据... if exist %name%.dmp del %name%.dmp E:\oracle\product\10.2.0\client_1\bin\exp 数据库用户名/数据库密码@orcl file=F:\backup\%name%.dmp echo ... echo ... echo 备份完成! exit
?这里的
set day=%txt3: =%
是去掉后面的空格,而
set name=%date: =-%
是为了替换所有的空格为“-”。这样生成的名字就会是2011-09-15.dmp这样的形式。exp指令是oracle数据库的导出指令,比如exp admin/12345@orcl file=F:/demo.dmp表示导出数据库用户为admin,密码为12345,数据库实例为orcl的数据库,存储文件为F盘的demo.dmp。
????? 然后给这个批处理加上计划任务。可以用at指令,如果不太熟悉的话,可以直接用windows自带的计划任务来设置。
本人win7系统,路径是“开始”---“所有程序”---“附件”---“系统工具”---“任务计划程序”。然后点击“创建任务”,然后设置相应内容。
?
?
?
?
?
OK了,现在可以在每天下午的4点自动执行批处理进行备份了。。。
?
?