每天自动备份oracle

oracle数据库比其他数据库都贵,但是自带的管理工具却很差,真不知道咋想的。

想完成每天自动备份,只能自己动手(window环境):

1、创建个备份目录,如D:\databack

2、创建个脚本:backup.bat

核心内容如下:

set curdate=%date:~0,4%%date:~5,2%%date:~8,2%

set backuppath=D:\databack

exp 用户名/密码@sid file=%backuppath%\exp%curdate%.dmp log=%backuppath%\%curdate%.log

forfiles /p "D:\databack" /s /m *.dmp /d -30 /c "cmd /c del @file"

forfiles /p "D:\databack" /s /m *.log /d -30 /c "cmd /c del @file"

注意标黄的需要替换为自己环境下参数,其中的核心命令用到了exp和forfiles,具体用法自行脑补。

先手工执行下,确保执行无误。

3、利用window的计划任务实现每日执行:

打开任务计划程序(在服务器管理器里)。

创建一个基本任务,填写任务名称和描述。

设置任务的执行周期为每天。

设置开始时间,建议选择在夜间备份数据库,如每天两点。

选择执行的操作为"启动程序",并选择前面创建的backup.bat文件。

界面显示如下: