定时备份oracle(Windows)

第一步:建立备份脚本oraclebackup.bat

首先建立一个备份bat文件,在D盘下新建备份目录oraclebackup,将Oracle安装目录下的EXP.EXE复制到此目录下,再新建一个文本文件oraclebackup.txt,内容如下:

@echo off 
@echo 删除10天前的备分文件和日志

forfiles /p "D:\oraclebackup" /m *.rar /d -10 /c "cmd /c del @path"

Set FileDir=E:\AppsData\Works\OrclBackUp\BTMS 
Set SysDate=%date:~0,4%-%date:~5,2%-%date:~8,2%.%time:~0,2%%time:~3,2% 
Set FileName=%ExpUser%~%OrclSid%_%SysDate%

@echo 正在备份 Oracle 数据库,请稍等……

expsystem/[email protected]=D:/oraclebackup/mdb%FileName%.dmp log=D:/oraclebackup/mdb%FileName%.log full=y feedback=10000 buffer=65535 
@echo 任务完成!

@echo 开始压缩数据库备份...

"D:\Apps\Tools\WinRAR\Rar.exe" a %FileName%.rar %FileName%.dmp 
"D:\Apps\Tools\WinRAR\Rar.exe" a %FileName%.rar %FileName%.log 
@echo 数据库备份压缩完成!

完成后,将该记事本的后缀txt改成bat即可。

双击oraclebackup.bat可以测试是否可以正常备份。

第二步:新建windows计划任务

进入windows的控制面板,打开计划与任务,新建任务,点击浏览,选择刚才新建的d盘oraclebackup目录下的oraclebackup.bat文件。接着选择每天晚上22:00点执行,再输入本机的administrator密码即可。

备注:这里我记录下,我遇到的问题,主要是因为我一个用户里面有很多表,但是现在我不需要全部备份,只需要备份XXX打头的表,

OK,修改exp语句exp system/[email protected] tables=(system.XXX%%)file=D:/oraclebackup/mdb%date:~0,4%%date:~5,2%%date:~8,2%.dmp log=D:/oraclebackup/mdb%date:~0,4%%date:~5,2%%date:~8,2%.log full=y buffer=65535 ,

注意:bat文件里面的%必须要是%%!

时间: 2024-08-27 22:17:55

定时备份oracle(Windows)的相关文章

win-server下定时备份oracle数据库实现方法

1.在e盘建立一个“oracle_backup”的文件夹,文件夹下再建两个文件夹分别为:“new”,“old”,然后在oracle_backup文件夹中新建一个bat文件,取名“expdb.bat”,内容如下: REM ** File:expdb.batREM ** Name:database backupREM ** Desc:database backup filecopy e:\oracle_backup\new\*.dmp e:\oracle_backup\oldexp username

Windows下Oracle定时备份(全量备份)

关于Windows下oracle全量备份的文章,很多网站都有,写下本文不过是为了以后方便查找,不用再到处找. 以下些许内容有所参考到其他人所写内容,这里无意冒犯,本文引用内容部分会附上参考地址,还望原作者见谅. 备份脚本 新建txt文档,把脚本复制进去后改文件格式为bat文件,双击运行即可测试该脚本是否有误. 这里要说明一下,开始把脚本拿过来执行时,一直未能成功备份数据库 用bat的pause暂停调试发现了一些问题,有时不注意可能会在定义的变量如BACKUPDATE.USER等后面带了空格 这个

Windows上备份Oracle批处理方法(配合计划任务或第三方定时软件,可以做到自动备份)

@echo 开始备份oracle数据 @echo off set set curdir="D:\backup" echo %curdir% set t1=%Time:~0,1% if "%t1%"==" " set t1=0 set td=%Date:~0,4%%Date:~5,2%%Date:~8,2%%t1:~0,1%%Time:~1,1%%Time:~3,2%%Time:~6,2% exp naricom/[email protected]

oracle用expdp定时备份所有步骤详解[转]

用oracle命令备份数据库,生成dmp文件,保存了整一套的用户及表数据信息.还原简单.加上widnows的批处理bat命令,实现每天0点备份,现把经验送上给大家! 工具/原料 oracle11g 11.2.0 64位 百度经验:jingyan.baidu.com 方法/步骤 1 在“运行”里打开cmd 步骤阅读 2 输入命令:sqlplus system/[email protected] 其中system是登录数据库的用户名 123456是用户名的密码 orcl是数据库实例名称 步骤阅读 3

windows下mysql数据库定时备份。

注意:看本教程先必须会windows自带的"任务计划程序". 首先创建一个bat后缀的文件我的是timerExecutePhp.bat文件 timerExecutePhp.bat 这个文件是用来定时执行指定的php文件 timerExecutePhp.bat文件内容: F:\web\php-5.6.22-Win32-VC11-x64\php.exe F:\web\htdocs\demo\timer.php 注释: 1.F:\web\php-5.6.22-Win32-VC11-x64\p

[转]mysql自动定时备份数据库的最佳方法-支持windows系统

网上有很多关于window下Mysql自动备份的方法,可是真的能用的也没有几个,有些说的还非常的复杂,难以操作. 我们都知道mssql本身就自带了计划任务可以用来自动备份,可是mysql咱们要怎么样自动有备份呢? 这个方法是用bat批处理来完成的. 假想环境:MySQL 安装位置:D:\Program Files\MySQL\MySQL Server 5.0\data 如图: 数据库名称为:952game数据库备份目的地:d:\db_bak\ (你想把数据库备份到哪个盘的路径)我想备到D盘的db

Windows下为MySQL做定时备份

第一种:新建批处理文件 backup.dat,里面输入以下代码:  代码如下 复制代码 net stop mysqlxcopy "C:/Program Files/MySQL/MySQL Server 5.0/data/piaoyi/*.*" D:/db_backup/%date:~0,10%/ /ynet start mysql 注意:批处理命令中路径里有空格的话,必须在路径上加上双引号!然后使用Windows的"计划任务"定时执行该批处理脚本即可.(例如:每天凌

oracle 定时备份

第一步.bat脚本: @echo off echo 删除10天前的备分文件和日志 forfiles /p "z:/back" /m *.dmp /d -10 /c "cmd /c del @path" forfiles /p "z:/back" /m *.log /d -10 /c "cmd /c del @path" echo 正在备份 Oracle 数据库,请稍等…… exp sxybyj/[email protected

oracle定时备份与删除N天前备份文件

oracle定时备份数据库,以及删除7天前备份的数据. 1.创建存放备份目录: mkdir /home/oracle/data_backup mkdir /home/oracle/log_backup 2.编辑脚本oracle_backup.sh,内容如下: #!/bin/sh export ORACLE_BASE=/home/oracleexport ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1export ORACLE_SID=orclexport