windows下oracle数据库自动备份bat脚本
admin
2023-05-12 07:22:17
0

exp方式导出:

1、根据日期自动生成 Oracle 备份文件

@echo off  
echo 正在备份Oracle数据库,请稍等......  
exp userid='用户名/密码@SID' file=D:\bak\res_%date:~0,4%%date:~5,2%%date:~8,2%.dmp log=D:\bak\res_%date:~0,4%%date:~5,2%%date:~8,2%.log owner=res  
echo 任务完成!


2、根据日期时间分秒自动生成 Oracle 备份文件

@echo off  
echo 正在备份Oracle数据库,请稍等......  
exp userid='用户名/密码@SID' file=D:\bak\res_%date:~0,4%%date:~5,2%%date:~8,2%%Time:~0,2%%Time:~3,2%%Time:~6,2%.dmp log=D:\bak\res_%date:~0,4%%date:~5,2%%date:~8,2%%Time:~0,2%%Time:~3,2%%Time:~6,2%.log
echo 任务完成!


3、用exit结尾备份完后自动退出:

@echo off   
echo ================================================   
echo  Windows环境下Oracle数据库的自动备份脚本  
echo  1. 使用当前日期命名备份文件。  
echo  2. 自动删除7天前的备份。  
echo ================================================  

::以“YYYYMMDD”格式取出当前时间。  
set BACKUPDATE=%date:~0,4%%date:~5,2%%date:~8,2%%Time:~0,2%%Time:~3,2%%Time:~6,2%

::创建备份目录。  
if not exist "D:\backup\data"    mkdir D:\backup\data  
if not exist "D:\backup\log"     mkdir D:\backup\log  
set DATADIR=D:\backup\data
set LOGDIR=D:\backup\log
exp userid='用户名/密码@SID'  file=%DATADIR%\data_%BACKUPDATE%.dmp log=%LOGDIR%\log_%BACKUPDATE%.log  

::删除7天前的备份。  
forfiles /p "%DATADIR%" /s /m *.* /d -7 /c "cmd /c del @path"  
forfiles /p "%LOGDIR%" /s /m *.* /d -7 /c "cmd /c del @path"  
exit


注:如果有时我们写bat脚本执行时一闪而过,无法排错;那么我可以在脚本的最后加个pause(如上面的脚本可以把exit换成pause),用pause结尾执行完后,会提示按任意键来继续或退出,这样我就能知道是什么报错。



expdp方法导出:

用exit结尾备份完后自动退出:

@echo off   
echo ================================================   
echo  Windows环境下Oracle数据库的自动备份脚本  
echo  1. 使用当前日期命名备份文件。  
echo  2. 自动删除10天前的备份。 
echo  3.使用expdb命令导出需要先在数据库中创建备份文件存贮目录,sql如下:
echo    create directory backdir as 'D:\backup\data'; 
echo ================================================  

::以“YYYYMMDD”格式取出当前时间。  
set BACKUPDATE=%date:~0,4%%date:~5,2%%date:~8,2%%Time:~0,2%%Time:~3,2%%Time:~6,2%

::设置用户名、密码和sid。  
set bakdbname=app
set bakdbpasswd=123
set sid=orcl
set dumpbame=appbak
set bakdbhome=D:\backup\data

::创建备份目录。
if not exist "D:\backup\data"       mkdir D:\backup\data

::expdp备份
expdp %bakdbname%/%bakdbpasswd%@%sid% directory=backdir dumpfile=%dumpbame%_%BACKUPDATE%.dmp logfile=%dumpbame%_%BACKUPDATE%.log

::切换目录
d:
cd %bakdbhome%

::调用rar进行压缩
::方法一winrar把log、dmp文件压缩成zip,不保留原始文件log,dmp文件(任选一种)
"C:\Program Files\WinRAR\Rar" a -m5 -dw %dumpbame%_%BACKUPDATE%".zip" %dumpbame%_%BACKUPDATE%.DMP

::方法二用winrar把log、dmp文件压缩成zip并保留原始文件log,dmp文件(任选一种),去掉dw这个参数
"C:\Program Files\WinRAR\WinRAR.exe" a -m5 %dumpbame%_%BACKUPDATE%".zip" %dumpbame%_%BACKUPDATE%.log %dumpbame%_%BACKUPDATE%.DMP

::删除10天前的备份。  
forfiles /p "%bakdbhome%" /s /m *.zip /d -10 /c "cmd /c del @path"  
forfiles /p "%bakdbhome%" /s /m *.log /d -10 /c "cmd /c del @path"
forfiles /p "%bakdbhome%" /s /m *.dmp /d -10 /c "cmd /c del @path"  
exit


相关内容

热门资讯

自己系的铃,自己来解 作者 | 雷墨编辑 | 阿树5月14日上午,中美两国元首举行了长达2小时15分钟的会谈。这是继201...
高校大门开放争议背后:一个人的... 5月13日,武汉大学宣布取消社会公众进校预约制度,公众凭身份证即可入校。这意味着学校自2023年7月...
三星承诺将打造更节能的智能家电... IT之家 5 月 14 日消息,据外媒 Sammobile 今日报道,三星签署了欧盟关于互操作性和能...
朱雀二号改进型遥五运载火箭发射... 中新社北京5月14日电 (记者 马帅莎)记者从蓝箭航天获悉,北京时间5月14日11时,朱雀二号改进型...
Aria Networks C... AI网络初创公司Aria Networks于今年4月高调亮相,同期完成1.25亿美元融资,并对AI基...
俄外交部:对与日方接触持开放态... 当地时间5月14日,就日本政府此前发表的有关日俄关系的言论,俄罗斯外交部发言人扎哈罗娃表示,俄对与日...
打造AI影像协作实验场 上影节... 上海国际电影节全新单元“AI片场”开机 打造AI影像协作实验场 “我做AI电影已经两年了。”德国AI...
我国首次成功批量克隆超高产奶山... 西北农林科技大学14日向新华社记者独家披露,学校羊遗传改良与生物育种创新团队攻克关键核心技术,6只超...
医学院硕博研究生靠虚开发票冒签... 33岁的柴某系江苏人,案发前系某医院博士后研究人员。一审法院认定,2018年至2023年,柴某在某医...
京东618自营电脑桌椅服务升级... 随着京东心动购物季开启,职场人、居家办公族及电竞爱好者的“久坐刚需”升级需求集中释放,电脑桌椅品类迎...