背景需求:

某部门需要将windows机器上的SQL server数据做一个异地备份,经过对现有的软硬件资源评估,决定使用阿里云的OSS存储

方法:利用SQLserver自带的维护计划做指定数据库的备份,通过bat批量执行脚本将备份文件上传到OSS---->(所需环境:python、osscmd、winrar)

问题:bat批执行脚本无法识别 * 这个正则匹配符,导致不能由每天的日期去识别备份文件。

解决方法:通过维护计划制定备份目录,每天备份后,上传到OSS后再将其删除

脚本如下:

@echo off
rem mail:baiyufeideyouxiang@163.com
set MON=%date:~0,4%%date:~5,2%
set DATE=%date:~0,4%%date:~5,2%%date:~8,2%
set TIME=%date%-%time%
set LOGDIR=G:\back_oss\data_back
set DIR=G:\back_oss\data_back
echo "%TIME% 开始执行完毕!">>%LOGDIR%\backup-oss.log
set NAME=某部备份
set DIRNAME=AIS20180831000315
set PY=G:\back_oss\software\python27\python.exe
set OSSCMD=G:\back_oss\software\OSS_PYTHON_API\osscmd
set RAR=G:\back_oss\software\winrar\WinRAR.exe
set BUCKET=oss://basebackup/
set ID=------
set KEY=------
set HOST=oss-cn-hangzhou.aliyuncs.comset FILE=AIS20180831000315
%RAR% a -k -r -s -m1 %DIR%%DATE%-%FILE%.rar %DIR%\%FILE%
set TIME=
set TIME=%date%-%time%
echo "%TIME% %FILE% 压缩文件执行完毕!">>%LOGDIR%\backup-oss.log
%PY% %OSSCMD% mkdir %BUCKET%%NAME%/%MON --id=%ID% --key=%KEY% --host=%HOST%
%PY% %OSSCMD% mp %DIR%%DATE%-%FILE%.rar %BUCKET%%NAME%/%MON%/%DATE%-%FILE%.rar --id=%ID% --key=%KEY% --host=%HOST% --thread_num=30
if errorlevel 1 ( %PY% %OSSCMD% mp %DIR%%DATE%-%FILE%.rar %BUCKET%%NAME%/%MON%/%DATE%-%FILE%.rar --id=%ID% --key=%KEY% --host=%HOST% --thread_num=30
) else (set TIME=set TIME=%date%-%time%echo "%TIME% %FILE% 上传文件执行完毕!">>%LOGDIR%\backup-oss.log
)
del %DIR%%DATE%-%FILE%.rar
set TIME=
set TIME=%date%-%time%
echo "%TIME% %FILE% 删除文件执行完毕!">>%LOGDIR%\backup-oss.logset FILE=
set FILE=AIS20180831000316
%RAR% a -k -r -s -m1 %DIR%%DATE%-%FILE%.rar %DIR%\%FILE%
set TIME=
set TIME=%date%-%time%
echo "%TIME% %FILE% 压缩文件执行完毕!">>%LOGDIR%\backup-oss.log
%PY% %OSSCMD% mkdir %BUCKET%%NAME%/%MON% --id=%ID% --key=%KEY% --host=%HOST%
%PY% %OSSCMD% mp %DIR%%DATE%-%FILE%.rar %BUCKET%%NAME%/%MON%/%DATE%-%FILE%.rar --id=%ID% --key=%KEY% --host=%HOST%
set TIME=
set TIME=%date%-%time%
echo "%TIME% %FILE% 上传文件执行完毕!">>%LOGDIR%\backup-oss.log
del %DIR%%DATE%-%FILE%.rar
set TIME=
set TIME=%date%-%time%
echo "%TIME% %FILE% 删除文件执行完毕!">>%LOGDIR%\backup-oss.log
echo "-----------%TIME% 执行完毕!---------">>%LOGDIR%\backup-oss.log

转载于:https://www.cnblogs.com/byfboke/p/10794453.html

SQL server数据异地备份到OSS相关推荐

  1. SQL Server 2005异地备份

    本方案采用备份至本地然后copy到文件服务器的方法. SQL server 2005打了sp2的补丁后好像存储过程xp_cmdshell是不能直接用的 1. 显示高级选项(仅需执行一次) EXEC s ...

  2. 【案例】“1GB1年1毛钱“——使用 Backup exec 基于阿里云OSS 实现企业数据异地备份 【服务器管理】【云备份】

    [案例]"1GB1年1毛钱"--使用 Backup exec 基于阿里云OSS 实现企业数据异地备份 [服务器管理][云备份] 1.使用环境 如图所示 资源 配置 备注 File ...

  3. SQL Server 找回没有备份的数据

    SQL Server 找回没有备份的数据 问题: 有一个库, 做的是 全备份+日志备份,在2011年3月8日,14点产生一次全备份,在14:10分产生日志备份,在14:12分down       机, ...

  4. 实验10 SQL Server 数据备份/恢复

    实验10 SQL Server 数据备份/恢复 一.实验目的 1.了解数据库备份的过程和属性设置: 2.掌握应用企业管理器备份和恢复数据库: 3.掌握应用T-SQL备份和恢复数据库: 4.掌握数据导入 ...

  5. 浅谈实现SQL Server远距离异地容灾

    浅谈实现SQL Server远距离异地容灾 SQL Server 从2012 推出 SQL Alwayson 以来,使我们对SQL Server数据库容灾产生翻天覆地的变化. 其优点很明显 1.不依赖 ...

  6. SQL SERVER 2008自动备份维护计划

    日常工作中利用SQL SQLSERVER 2008 的维护计划对数据库进行定期的备份,这样一方面可以对数据库进行备份保证数据安全另一方面也可以减轻对维护人员的负担.一般对于WEB 服务器进行维护都是在 ...

  7. SQL Server定期自动备份

    SQL Server定期自动备份 企业管理器中的Tools,Database Maintenance Planner,可以设置数据库的定期自动备份计划.并通过启动Sql server Agent来自动 ...

  8. 了解SQL Server事务日志备份和完整备份的日志序列号

    This article explores the SQL Server Transaction log backups and log sequence number (LSN) in combin ...

  9. sql server 分区_使用分区归档SQL Server数据

    sql server 分区 The Partition feature was introduced in the SQL Server 2005. This article is to cover ...

最新文章

  1. 10 款可以找回删除文件的好软件
  2. 网站建设中这些图片优化小技巧需掌握
  3. js经典校验之注册与登录校验
  4. mysql创建表对经常要查询的列添加索引或者组合索引
  5. mybatis collection_MyBatis之关联查询
  6. Linux Polkit 中的pkexec 组件存在的本地权限提升漏洞(CVE-2021-4034)修复方法及centos6和centos7的安装包
  7. AS 中强制类型转换
  8. cpp调用python_从python ctypes调用CPP函数
  9. android adb工具命令大全
  10. python平方和计算技巧,python平方和计算技巧 Python算法练习题:四平方和
  11. 给变量取个名字(变量命名)
  12. 网络和计算机加密解密感叹号,网络连接显示感叹号但是能上网怎么办 网络连接显示感叹号原因【图文】...
  13. 什么是SKEY,怎样获取SKEY,SKEY的…
  14. 【漫画科普】什么是PAM4
  15. html之简单新闻网制作
  16. VRTK_Artificial Rotator(人工旋转器)脚本属性详解
  17. 51单片机 YF-S201水流量检测传感器的使用
  18. python支付宝自动支付_python 调用支付宝支付
  19. HiPER 840负责均衡问题
  20. Conflux 进阶课 | 初始阶段通证发行数量

热门文章

  1. 服务器控件在客户端触发alert对话框后,根据情况进行回发服务器操作
  2. 通用的日志处理类(分享)
  3. FormView控件
  4. wordcloud词云使用方法
  5. springboot发送邮件_SpringBoot发送邮件如何实现,SpringBoot发送邮件详解(附代码)...
  6. leetcode - 1221. 分割平衡字符串
  7. 华为root工具_华为手机EMUI9 ROOT通用操作方法
  8. Scintilla 3 24在MFC中的使用 动态 静态
  9. Unity 4 3 制作一个2D横版射击游戏 2
  10. Oracle例外处理