求一个oracle 11g自动备份脚本,每行脚本需要有注释。例如:数据库名LC0001,密码123456,SID为ORCL,
发布网友
发布时间:2022-04-07 22:26
我来回答
共2个回答
热心网友
时间:2022-04-07 23:56
要求自动的话,自己在windows下设置定时任务,这个就不说了,网上教程很多。
另外,这个东西跟数据库名没什么关系,跟本地实例,还有用户名有关
写个脚本:
@echo off
echo 删除30天前的备分文件和日志
forfiles /p C:\data_bak /m *.dmp /d -30 /c "cmd /c del @path"
forfiles /p C:\data_bak /m *.log /d -30 /c "cmd /c del @path"
echo 正在备份 Oracle 数据库,请稍等……
exp scott/tiger@sytv file=c:/data_bak/orcl_data_bak_%date:~0,4%%date:~5,2%%date:~8,2%.dmp log=c:/data_bak/orcl_data_bak_%date:~0,4%%date:~5,2%%date:~8,2%.log owner=scott buffer=65535
cd C:\Program Files\WinRAR
rar a -dr C:/data_bak/orcl_data_bak_%date:~0,4%%date:~5,2%%date:~8,2%.dmp.rar C:/data_bak/orcl_data_bak_%date:~0,4%%date:~5,2%%date:~8,2%.dmp
echo 任务完成!
echo. & pause 请按任意键结束!
也没什么可解释的了。
exp scott/tiger@sytv file=c:/data_bak/orcl_data_bak_%date:~0,4%%date:~5,2%%date:~8,2%.dmp log=c:/data_bak/orcl_data_bak_%date:~0,4%%date:~5,2%%date:~8,2%.log owner=scott buffer=65535
也就这部分,scott是用户名,tiger是密码,sytv是本地实例名,然后file是备份文件名,log是日志文件名,owner=scott是导出scott下的所有对象,这个可根据自己情况修改。
执行后,文件是这样的:
热心网友
时间:2022-04-08 01:14
如果你的服务器是window的话就好办,我可以写一个备份脚本,然后用window系统自带的定时任务,定时执行这个脚本就达到备份效果了