更多资源:http://denghejun.github.io

备份

SQLServer中的备份,这里是T-SQL的用法,具体示例代码如下,使用也相对简单,其中TestDatabase

是指所需备份的数据库名称,@FileName是需要备份的全路径,例如@FileName的可能值为'D://Backups//file1.bak';

  USE TestDatabase
BACKUP DATABASE TestDatabase
TO DISK = @FileName

还原

SQLServer中的还原稍微麻烦点,因为涉及到一些权限或者访问的问题,在实际中也遇到过这些问题,

在此作一个简单介绍,下边是基本的还原T-SQL代码,其中各个元素同备份一样,需要注意的是SQLServer

建议该脚本的执行环境最好要在MASTER中:

USE MASTER
RESTORE DATABASE TestDatabase
FROM DISK = @FileName

但是在很多时候,上边的脚本并不理想,一般会出现"[Err] 42000 - [SQL Server]因为数据库正在使用,

所以无法获得对数据库的独占访问权。42000 - [SQL Server]RESTORE DATABASE 正在异常终止。",

这样的错误,很明显,当我们在还原数据库的时候,其他用户正在使用的话,该脚本将会执行失败,一般的

解决方案是杀掉所有正在使用数据库的进程。但断开所有连接用户并回滚事务,并在稍后的某个时间显示的数据

库处于在线状态,显得更优雅些:

USE master
ALTER DATABASE TestDatabase SET offline WITH ROLLBACK IMMEDIATE
RESTORE DATABASE TestDatabase FROM DISK='F://test.bak' WITH REPLACE
ALTER DATABASE TestDatabase SET online

细心的你可能注意到,在还原时加了特殊的OPTION: WITH REPLACE,是因为前面BACKUP时,我们没有备份

数据库LOG相关的东西,所以我们干脆就直接将其按备份文件(.bak)全部替换就行了。不加,该脚本执行会失败,

且提示你要么加上REPLACE,要么备份LOG。上边的SET OFFLINE是让数据库暂时处于离线状态,并将事物回滚,接

着我们执行RESTORE,最后,将数据库重新设置为ONLINE状态,即可完成数据库还原操作。

SQLServer中的数据库备份和还原的更多相关文章

  1. 批处理(bat)实现SQLServer数据库备份与还原

    原文:批处理(bat)实现SQLServer数据库备份与还原 备份数据库.bat @echo off set path=%path%;C:\Program Files (x86)\Microsoft ...

  2. C#.NET SQL数据库备份与还原解决方案

    C#.NET SQL数据库备份与还原解决方案http://www.csframework.com/archive/1/arc-1-20110924-1841.htm 开发框架V2.2(快速开发版)系统 ...

  3. 【C#】数据库备份及还原的实现代码【转载】

    [转载]http://www.codesky.net/article/200908/128600.html C#数据库备份及还原1.在用户的配置时,我们需要列出当前局域网内所有的数据库服务器,并且要列 ...

  4. SQL Server 2008数据库备份和还原(还原是必须有完整备份)

    转自lwccc, SQLserver2008数据库备份和还原问题(还原是必须有完整备份) 首先,我要说明的是你必须拥有完整的数据库备份,下面的还原教程,才算有用. 这个连接是某高手的异常恢复方法, 实 ...

  5. 【RAC】rac环境下的数据库备份与还原

    [RAC]rac环境下的数据库备份与还原 一.1  BLOG文档结构图 一.2  前言部分 一.2.1  导读 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~ ...

  6. sql操作数据库(2)--->DQL、数据库备份和还原

    查询 查询表中的所有的行和列的数据 ​ select * from 表名; ​ select * from student; 查询指定列的数据:如果有多个列,中间用逗号隔开. select 列名1,列 ...

  7. MySQL进阶:约束,多表设计,多表查询,视图,数据库备份与还原

    MySQL进阶 知识点梳理 一.约束 1. 外键约束 为什么要有外键约束 例如:一个user表,一个orderlist 如果现在想要直接删除id为1的张三,但是orderlist里还有用户id为1的订 ...

  8. PostgreSQL 数据库备份与还原

    PostgreSQL 数据库备份与还原 目录 备份 还原 栗子 备份 PostgreSQL提供的一个工具pg_dump,逻辑导出数据,生成sql文件或其他格式文件,pg_dump是一个客户端工具,可以 ...

  9. Mysql数据库备份和还原常用的命令

    Mysql数据库备份和还原常用的命令是进行Mysql数据库备份和还原的关键,没有命令,什么都无从做起,更谈不上什么备份还原,只有给系统这个命令,让它去执行,才能完成Mysql数据库备份和还原的操作,下 ...

随机推荐

  1. WordPress一键部署网站

    每个人心里都有一个建站梦,所以今天作为我第一篇文章,就给大家圆了这场梦. 今天我来详细的一步一步带领大家利用WordPress程序来建立自己的小站以及解决直接域名访问(本地安装wordpress请阅读 ...

  2. C and SQL data types for ODBC and CLI

    C and SQL data types for ODBC and CLI   This topic lists the C and SQL data types for ODBC and CLI a ...

  3. 新浪云SAE搭建python环境 问题拾遗

    1.python程序部署到sae上需要做的改动 在线上需要转换成wsgi的形式运行python程序. sae中运行python程序需要指定一个函数为入口函数. application = sae.cr ...

  4. Kafka基本原理

    简介 Apache Kafka是分布式发布-订阅消息系统.它最初由LinkedIn公司开发,之后成为Apache项目的一部分.Kafka是一种快速.可扩展的.设计内在就是分布式的,分区的和可复制的提交 ...

  5. 3 3Sum closest_Leetcode

    Given an array S of n integers, find three integers in S such that the sum is closest to a given num ...

  6. 「理解HTTP」之常见的状态码segmentfault

    状态码的职责是当客户端向服务器端发送请求时,描述返回请求结果.借助状态码,用户可以知道服务器端是正常处理了请求,还是出现了什么错误. RFC2616定义的状态码,由3位数字和原因短信组成.数字中的第一 ...

  7. 使用 CommandLineApplication 类创建专业的控制台程序

    闲话 在很久很久以前,电脑是命令行/终端/控制台的天下,那屏幕上的光标在行云流水般的键盘敲击下欢快地飞跃着,那一行行的字符输出唰唰唰地滚动着--直到 Windows 95 的出现(那时候我还不知道苹果 ...

  8. 隐藏进程中的模块绕过IceSword的检测

    标 题: [原创] 隐藏进程中的模块绕过IceSword的检测 作 者: xPLK 时 间: 2008-06-19,17:59:11 链 接: http://bbs.pediy.com/showthr ...

  9. Beginning Scala study note(6) Scala Collections

    Scala's object-oriented collections support mutable and immutable type hierarchies. Also support fun ...

  10. 2016多校联合训练4 F - Substring 后缀数组

    Description ?? is practicing his program skill, and now he is given a string, he has to calculate th ...