zoukankan      html  css  js  c++  java
  • Windows下Oracle定时备份(全量备份)

    关于Windows下oracle全量备份的文章,很多网站都有,写下本文不过是为了以后方便查找,不用再到处找。

    以下些许内容有所参考到其他人所写内容,这里无意冒犯,本文引用内容部分会附上参考地址,还望原作者见谅。

    备份脚本

    新建txt文档,把脚本复制进去后改文件格式为bat文件,双击运行即可测试该脚本是否有误。

    这里要说明一下,开始把脚本拿过来执行时,一直未能成功备份数据库

    用bat的pause暂停调试发现了一些问题,有时不注意可能会在定义的变量如BACKUPDATE、USER等后面带了空格

    这个时候问题就来了,导致参数的不正确,所以这里需注意!

    @echo off   
    echo ================================================   
    echo  Windows环境下Oracle数据库的自动备份脚本  
    echo  1. 使用当前日期命名备份文件。  
    echo  2. 自动删除7天前的备份。  
    echo ================================================  
    echo  以“YYYYMMDD”格式取出当前时间。  
    set BACKUPDATE=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%
    echo  设置用户名、密码和要备份的数据库
    set USER=ora_user
    set PASSWORD=ora_name
    set DATABASE=conn_db
    echo  创建备份目录
    if not exist "E:ackupdata"       mkdir E:ackupdata  
    if not exist "E:ackuplog"        mkdir E:ackuplog  
    set DATADIR=E:ackupdata
    set LOGDIR=E:ackuplog
    exp %USER%/%PASSWORD%@%DATABASE% file=%DATADIR%data_%BACKUPDATE%.dmp log=%LOGDIR%log_%BACKUPDATE%.log
    echo  删除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

    注:该脚本参考Windows环境下Oracle数据库的自动备份脚本

    定时任务

    这里需要用到Windows的【任务计划程序】,操作按照下列截图一一操作。

    一、快捷查询:

    二、选择任务计划程序:

    三、创建基本任务:

    四、填写任务相关信息:
    1)定时任务描述

    2)任务执行时间

    选择刚刚写的数据库备份脚本

    最后在任务列表里可以看到刚刚创建的定时任务,那么这个任务从设定的时间开始则会每天执行一次,即达到定时备份任务了

    注:以上内容参考 定时备份ORACLE数据库:[1]windows环境下

    以上便是Windows下定时全量备份Oracle数据库了

  • 相关阅读:
    iOS开发-Sqlite
    iOS开发-HTTP协议
    iOS开发
    iOS 开发小记 (八)
    iOS
    iOS开发-基础框架
    Java门面模式
    Linux常用命令
    canal使用小结
    MySQL隔离级别的测试
  • 原文地址:https://www.cnblogs.com/jijm123/p/12168622.html
Copyright © 2011-2022 走看看