批处理(bat)实现SQLServer数据库备份与还原
原文:批处理(bat)实现SQLServer数据库备份与还原
备份数据库.bat
@echo off
set path=%path%;C:\Program Files (x86)\Microsoft SQL Server\80\Tools\Binn
echo 数据库备份开始
osql.exe -S 127.0.0.1 -U sa -P 123456 -i sqlserverbackup.sql -o c:\backup\sqlserverbackup.out
echo 数据库备份完成
pause
sqlserverbackup.sql
DECLARE @name varchar(50)
DECLARE @datetime char(14)
DECLARE @path varchar(255)
DECLARE @bakfile varchar(255)
set @name='DataSample'
set @datetime=CONVERT(char(8),getdate(),112) + REPLACE(CONVERT(char(8),getdate(),108),':','')
set @path='c:\backup\'
set @bakfile=@path+''+@name+'_'+'bak_'+@datetime+'.BAK'
backup database @name to disk=@bakfile with name=@name
go
还原数据库.bat
@echo off
echo 开始还原数据库
net start "mssqlserver"
osql -U sa -P 123456 -i c:\backup\sqlserverrestore.sql -o c:\backup\sqlserverrestore.out
echo 还原数据库完成
pause
sqlserverrestore.sql
declare @dumpfile varchar(50)
declare @msg varchar(70)
select @dumpfile = 'c:\backup\DataSample_bak_20170718145556.BAK'
select @msg=convert(char(26),getdate(),9)
print @msg restore DATABASE DataSample from disk=@dumpfile
if (@@ERROR <> 0 )
begin
select @msg=convert(char(26),getdate(),9)+'-----还原数据失败或出现异常'
print @msg
end
else
begin
select @msg=convert(char(26),getdate(),9)+'-----数据库还原完毕'
print @msg
end
declare @dumpfile varchar(50)
declare @msg varchar(70)
select @dumpfile = 'c:\backup\DataSample_bak_20170718161443.BAK'
select @msg=convert(char(26),getdate(),9)
print @msg ----同一个备份文件还原成不同名称数据库
RESTORE DATABASE DataSample1
FROM disk=@dumpfile
WITH RECOVERY,
MOVE 'DataSample' TO 'D:\MyData\DataSample1.mdf',
MOVE 'DataSample_Log' TO 'D:\MyData\DataSample1_Log.ldf' if (@@ERROR <> 0 )
begin
select @msg=convert(char(26),getdate(),9)+'-----还原数据失败或出现异常'
print @msg
end
else
begin
select @msg=convert(char(26),getdate(),9)+'-----数据库还原完毕'
print @msg
end
批处理(bat)实现SQLServer数据库备份与还原的更多相关文章
- sqlServer数据库备份与还原——差异备份与还原
1.差异备份 是完整备份的补充 备份自上次完整备份以来的数据变动的部分 2.备份过程: 在做差异备份之前需要先进行完整备份.完整备份的过程见:https://i.cnblogs.com/EditPos ...
- SqlServer数据库备份与还原
http://v.youku.com/v_show/id_XMjA4NzcyNzUy.html http://v.youku.com/v_show/id_XMjA4Nzc0NDQw.html
- 【C#】数据库备份及还原的实现代码【转载】
[转载]http://www.codesky.net/article/200908/128600.html C#数据库备份及还原1.在用户的配置时,我们需要列出当前局域网内所有的数据库服务器,并且要列 ...
- SQLSERVER数据库备份操作和还原操作做了什么
SQLSERVER数据库备份操作和还原操作做了什么 看了这篇文章:还原/备份时做了些什么 自己也测试了一下,下面说的错误日志指的是SQLSERVER ERRORLOG 一般在C:\Program Fi ...
- C#.NET SQL数据库备份与还原解决方案
C#.NET SQL数据库备份与还原解决方案http://www.csframework.com/archive/1/arc-1-20110924-1841.htm 开发框架V2.2(快速开发版)系统 ...
- Mysql数据库备份和还原常用的命令
Mysql数据库备份和还原常用的命令是进行Mysql数据库备份和还原的关键,没有命令,什么都无从做起,更谈不上什么备份还原,只有给系统这个命令,让它去执行,才能完成Mysql数据库备份和还原的操作,下 ...
- [转]MySQL数据库备份和还原的常用命令小结
MySQL数据库备份和还原的常用命令小结,学习mysql的朋友可以参考下: 备份MySQL数据库的命令 mysqldump -hhostname -uusername -ppassword datab ...
- 将服务器上的SqlServer数据库备份到本地
如何将服务器上的SqlServer数据库备份到本地电脑 http://bbs.csdn.net/topics/370051204 有A数据库服务器,B本机: 我现在想通过在B机器上通过代码调用S ...
- SQL Server 2008数据库备份和还原(还原是必须有完整备份)
转自lwccc, SQLserver2008数据库备份和还原问题(还原是必须有完整备份) 首先,我要说明的是你必须拥有完整的数据库备份,下面的还原教程,才算有用. 这个连接是某高手的异常恢复方法, 实 ...
随机推荐
- [Angular] @ContentChildren and QueryList
We have looked at @ContentChild in article(http://www.cnblogs.com/Answer1215/p/6414657.html). Now le ...
- hbase 2.0.2 put和delete的一些坑
测试的inbox表为多版本表,封装的scanTable已设置查询全部版本,以下的测试基于hbase2.0.2 一.put(针对相同的rowkey) 测试1.使用方法链的形式对同一个put添加数据到不同 ...
- Linux初接触设置笔记01
没事装Linux尝试一下,来来回回装无数次,把刚开始需要设置的东西自己收藏一下,针对Centos7 装完Centos默认会覆盖windows引导,所以首先要做的是恢复windows的引导,如果不恢复, ...
- 【序列操作I】线段树
题目描述 Lxhgww 最近收到了一个 01 序列,序列里面包含了 n(1≤n≤105)个数,这些书要么是 0,要么是 1,现在对这个序列有五种变换操作和询问操作:1. 0 a b ,把[a,b]区间 ...
- hadoop 3.x 服役 | 退役数据节点
在服役前要配置好新增主机的环境变量,ssh等信息,个人环境介绍 hadoop002(namenode),hadoop003(resourcemanager),hadoop004(secondaryna ...
- 分位数和分位线(Quantiles and Percentiles)
分位数有种积分(累积)的含义在. 分位数(即将数据由低至高排列,小于该数的数据占总体的比例达到时最终落到的数): 10%:3000元 20%:5200元 50%:20000元 80%:41500元 9 ...
- Android中数据库和安装包分离
我们在做Android应用尤其是商业应用的时候,很多时候都需要后期版本升级,如果我们的数据库文件非常大,比如游戏之类的,这时候就不应该每次版本更新都去重新复制数据库.将数据库和安装包分离,下面来详细介 ...
- 从华为产品学到什么是devops
根据Gartner 2015 I&O Automation 报告,DevOps处于技术发展的最高点,实践受到高度关注,到底devops魔力在哪里? 从devops实践看主要是打破开发人员和运营 ...
- 说下IEnumerable相关的
IEnumerable 我们每天都在使用foreach进行遍历,今天讨论下面三个常见的问题: 为什么在foreach中不能修改item的值 要实现foreach需要满足什么条件 为什么Linq to ...
- JavaScript实现算法
leetcode算法题(JavaScript实现) 题外话 刷了一段时间的codewars的JavaScript题目之后,它给我最大的感受就是,会帮助你迅速的提升你希望练习的语言的API的熟悉程度 ...