@echo off echo ================================================ echo Windows环境下Oracle数据库的自动备份脚本 echo 1. 使用当前日期命名备份文件。 echo 2. 自动删除30天前的备份。 echo ================================================ ::以“YYYYMMDD”格式取出当前时间。 set BACKUPDATE=%date:~0,4%%date:~5,2%%date:~8,2% ::设置用户名、密码和要备份的数据库。 set USER=ncmms set PASSWORD=ncmms set DATABASE=orcl ::创建备份目录。 if not exist "E:data_back" mkdir E:data_back set DATADIR=E:data_back set LOGDIR=E:data_back exp %USER%/%PASSWORD%@%DATABASE% file=%DATADIR% cmms%BACKUPDATE%.dmp log=%LOGDIR% cmms%BACKUPDATE%.log ::删除30天前的备份。 forfiles /p "%DATADIR%" /s /m *.* /d -30 /c "cmd /c del @path" forfiles /p "%LOGDIR%" /s /m *.* /d -30 /c "cmd /c del @path" exit