实现的功能:
每天定时自动备份,这里做的是完全备份
同时拷贝到其他电脑的共享目录
删除本地过期文件,只保留最新的几个
bat脚本需要加入到windows系统的任务计划任务里
oracle备份bat脚本代码如下:
@echo off
echo ==========================================
echo. oracle数据库备份
echo.
echo %date%
echo %time%
echo ==========================================
:: oracle信息,bin目录、数据库用户名、密码
set oraclepath=D:\app\Administrator\product\11.1.0\db_1\BIN
set username=name
set password=pwd
::设置备份文件名字
set backupname=ycqx%date:~0,4%%date:~5,2%%date:~8,2%
::设置备份路径、日志路径
set backuppath=D:\backup\db\
set logpath=D:\backup\log\xxx.log
echo. 开始备份,请勿关闭窗口
"%oraclepath%\exp.exe" %username%/%password%@orcl file=%backuppath%%backupname%.dmp log=%logpath%
echo. 备份完成
::拷贝文件到其他电脑
net use \\10.10.10.10 "password" /user:"username"
xcopy "%backuppath%%backupname%" \10.10.10.10\backup\ /s/y
::保留最新3个文件,其他的删除
for /f "skip=3" %%i in ('dir D:\backup\db\*.* /tc /o-d /b /s') do del %%i
echo.
mysql备份bat脚本代码如下:
@echo off
echo.
echo.----------------------------------------------------------
echo. mysql自动备份
echo.
echo.
echo. %date%
echo. %time%
echo.-----------------------------------------------------------
echo.
echo.
:: mysql信息,安装bin目录,用户名密码,数据库名字,备份名字
set mysqldump=C:\Program Files\MySQL\MySQL Server 5.7\bin
set username=root
set password=pws
set database=smartapp
set backupname=%database%%date:~0,4%%date:~5,2%%date:~8,2%.sql
echo.
echo.
echo.备份中,请勿关闭窗口
"%mysqldump%\mysqldump.exe" -u%username% -p%password% %database% --default-character-set=utf8 > "F:\backup\mysql\%backupname%"
echo.
echo.备份完成
::拷贝文件到其他服务器
net use \\10.10.10.10 "pwd" /user:"username"
xcopy "F:\backup\mysql\%backupname%" \\10.10.10.10\backup\ /s/y
::保留最新5个文件,其他的删除
for /f "skip=5" %i in ('dir F:\backup\mysql\*.* /tc /o-d /b /s') do del %i
echo.
oracle还原备份
在cmd使用imp命令
imp root/pwd file= log= full=y ignore=y
mysql还原备份
第一步 打开cmd进入mysql安装路径
cd C:\Program Files\MySQL\MySQL Server 5.7\bin
第二步 执行恢复操作
mysql -hlocalhost -uroot -ppwd --default-character-set=utf8 db_name < E:\backup\backup\db20200415.sql
网友评论