博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
全自动备份vss和sql数据库(含源码下载)
阅读量:5791 次
发布时间:2019-06-18

本文共 2144 字,大约阅读时间需要 7 分钟。

  • 前言

visual source safe 里有代码,sql server 里有数据,这就是项目的全部。

拥有他们就拥有了全部,所以这些东西的安全实在是重要。

本文以批处理的方式,实现了全自动备份vss和全部sql数据库的功能。

  • 备份数据库:

采用osql调用sql脚本的方式,自动备份全部数据库,并导出执行结果。
备份数据库的批处理文件(auto_backup_db.bat),他采用信任连接的方式调用auto_backup_db.sql脚本实现备份功能,

并将备份的日志写入backup_database_log.txt,为避免重名覆盖将文件名修改为backup_database_log_%DATE%.txt,

形如:backup_database_log_2011-10-09.txt。

@echo off @echo start to backup database osql -E -i auto_backup_db.sql -o backup_database_log.txt @echo finished backup database FOR /F "tokens=1-3 delims=- " %%i IN ('date /t') DO SET DATE=%%i-%%j-%%k rename "backup_database_log.txt" "backup_database_log_%DATE%.txt" @echo on

 备份数据库sql脚本auto_backup_db.sql如下,请根据情况修改文件备份路径:    

USE master go DECLARE @bak_path NVARCHAR(200) DECLARE @bak_file_name NVARCHAR(200) --设置文件备份路径 SET @bak_path = 'E:\DataBaseBAK' --利用游标遍历,逐个备份数据库 DECLARE @db_name SYSNAME DECLARE cur_database CURSOR FOR SELECT  [name]-- 查询所有数据库     FROM    sys.databases WHERE   [state] = 0 -- 0 = ONLINE 在线状态     AND [name] NOT IN ( 'master', 'model', 'msdb', 'tempdb', 'ReportServer','ReportServerTempDB') --系统数据库、演示数据库除外 OPEN cur_database FETCH NEXT FROM cur_database INTO @db_name WHILE ( @@FETCH_STATUS = 0 ) BEGIN --设置备份文件名称,形如:dbname_2011-10-09.bak         SET @bak_file_name = @bak_path + '\' + @db_name + '_' + CONVERT(VARCHAR(10), GETDATE(), 120) + '.bak'  --开始完整备份                BACKUP DATABASE @db_name TO DISK = @bak_file_name  FETCH NEXT FROM cur_database INTO @db_name END CLOSE cur_database DEALLOCATE cur_database
  • 自动备份vss auto_backup_vss.bat
@ECHO OFF @TITLE Backing up source safe databases SET VSS_Install_Path="C:\Program Files\Microsoft Visual SourceSafe\" SET VSS_DB="\\192.168.0.244\vss" SET Bak_File="e:\%DATE%_vss_backup.ssa" SET VSS_Admin_Name="admin" SET VSS_Admin_Password="your_password" FOR /F "tokens=1-3 delims=- " %%i IN ('date /t') DO SET DATE=%%i-%%j-%%k %VSS_Install_Path%"ssarc" -d- -y%VSS_Admin_Name%,%VSS_Admin_Password% -s%VSS_DB%  %Bak_File% $/ @ECHO finished backup vss

请根据情况修改这些条目:

VSS_Install_Path = vss的安装路径

VSS_DB = vss数据库路径

Bak_File = 备份文件路径

VSS_Admin_Password=vss超级管理员密码

 

 

 

转载于:https://www.cnblogs.com/BingoLee/archive/2011/10/09/2203679.html

你可能感兴趣的文章
部件举例之磁头上岗记(硬盘构造再揭秘之二)
查看>>
我们如何从VC++开始“编程”?
查看>>
设计模式学习笔记(8)——装饰者模式
查看>>
个人笔记------微信支付
查看>>
Django 之 基于类的视图源码分析
查看>>
增强的任务单元模型
查看>>
十招保护Linux系统安全
查看>>
Luhn算法验证银行卡是否有效
查看>>
javascript代码snippet
查看>>
《棋经十三篇》
查看>>
统计方法:Count API-Medoo使用指南
查看>>
Slackware窗口系统本地化
查看>>
Swift-SnapKit报错(代码布局)原因
查看>>
并发编程知识点记录
查看>>
Map并发变成的三种写法,执行时间简单比较
查看>>
字符集与字符编码
查看>>
美团点评容器平台介绍
查看>>
免费的数据库建模工具
查看>>
Springboot2.0整合RocketMQ示例
查看>>
U956从B02升级至B04全过程
查看>>