目标

Windows 环境下备份远程 Oracle 数据库数据

条件

  1. windows 备份服务器「存储备份文件等」

  2. Oracle 客户端程序

  3. visual c++ 2013运行库「根据需要安装」

  4. 备份脚本文件

  5. 远程 Oracle 服务器 IP地址、端口、SID、账号、密码

步骤

1. 安装Oracle 客户端程序

  1. 拷贝 instantclient_12_2_basic.zip 客户端文件至备数据库服务器磁盘并解压
    UTOOLS1576649753375.png

  2. 将解压后的目录 D:\instantclient_12_2_basic 加入到系统环境变量Path中
    UTOOLS1576649789511.png

  3. 检测是否支持exp 命令
    UTOOLS1576649826488.png

  4. 如果出现以下弹窗,则需要安装visual c++ 2013运行库
    UTOOLS1576649859217.png
    UTOOLS1576649879853.png

  5. 再测检测是否支持exp命令,出现如下说明Oracle客户端安装成功
    UTOOLS1576649997383.png

2. 准备数据库备份脚本文件

脚本功能:

  1. 备份文件到指定目录
  2. 删除超期文件
1
2
3
4
5
6
7
8
9
10
11
12
rem 备份到 D:\OracleData 目录
D:
if not exist OracleData (mkdir OracleData)
cd OracleData

set NLS_LANG=american_america.AL32UTF8
if not exist sgp_%date:~0,4%%date:~5,2%%date:~8,2%.dmp (exp sgp/sgp@192.168.0.99:1521/orcl file=sgp_%date:~0,4%%date:~5,2%%date:~8,2%.dmp owner=sgp log=sgp_%date:~0,4%%date:~5,2%%date:~8,2%.log)

rem 删除超期文件,90 天以前创建的文件
set DaysAgo=90
set dealPath=D:\OracleData\
forfiles /p %dealPath% /m *.dmp /d -%DaysAgo% /c "cmd /c del /q @FILE && echo %date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2% && echo @FILE" >> delete_old_backup.log

UTOOLS1576650286131.png

3. 创建定时备份任务

开始-管理工具-任务计划程序,打开任务计划程序库,点击「创建基本任务」
UTOOLS1576650332585.png
UTOOLS1576650353838.png
UTOOLS1576650378471.png
UTOOLS1576650391253.png
UTOOLS1576650214527.png
UTOOLS1576650162721.png
UTOOLS1576650214527.png

4. 设置启动任务时不显示黑窗口

​ 使用其它账户执行脚本,选择 system

20200521122747_RHfmog 20200521123223_b96Zcj image-20200521123249895