一、还原完整备份的语法如下:

RESTORE DATABASE { database_name | @database_name_var }                  --数据库名

[ FROM <backup_device> [ ,...n ] ]                                                --备份设备

[ WITH

[ { CHECKSUM | NO_CHECKSUM } ]                                        --是否校检和

[ [ , ] { CONTINUE_AFTER_ERROR | STOP_ON_ERROR } ]             --还原失败是否继续

[ [ , ] ENABLE_BROKER ]                                           --启动Service Broker

[ [ , ] ERROR_BROKER_CONVERSATIONS ]                              --对束所有会话

[ [ , ] FILE = { backup_set_file_number | @backup_set_file_number } ]        --用于还原的文件

[ [ , ] KEEP_REPLICATION ]                            --将复制设置为与日志传送一同使用

[ [ , ] MEDIANAME = { media_name | @media_name_variable } ]                    --媒体名

[ [ , ] MEDIAPASSWORD = { mediapassword |                                  --媒体密码

@mediapassword_variable } ]

[ [ , ] MOVE 'logical_file_name_in_backup' TO 'operating_system_file_name' ]     --数据还原为

[ ,...n ]

[ [ , ] NEW_BROKER ]                                  --创建新的service_broker_guid值

[ [ , ] PASSWORD = { password | @password_variable } ]                     --备份集的密码

[ [ , ] { RECOVERY | NORECOVERY | STANDBY =                              --恢复模式

{standby_file_name | @standby_file_name_var }

} ]

[ [ , ] REPLACE ]                                                      --覆盖现有数据库

[ [ , ] RESTART ]                                            --重新启动被中断的还原操作

[ [ , ] RESTRICTED_USER ]                                      --限制访问还原的数据库

[ [ , ] { REWIND | NOREWIND } ]                                    --是否释放和重绕磁带

[ [ , ] { UNLOAD | NOUNLOAD } ]                                    --是否重绕并卸载磁带

[ [ , ] STATS [ = percentage ] ]                       --还原到其在指定的日期和时间时的状态

[ [ , ] { STOPAT = { date_time | @date_time_var }                  --还原到指定的日期和时间

|  STOPATMARK = { 'mark_name' | 'lsn:lsn_number' }    --恢复为已标记的事务或日志序列号

[ AFTER datetime ]

|  STOPBEFOREMARK = { 'mark_name' | 'lsn:lsn_number' }

[ AFTER datetime ]

} ]

]

[;]

<backup_device> ::=

{

{ logical_backup_device_name |

@logical_backup_device_name_var }

| { DISK | TAPE } = { 'physical_backup_device_name' |

@physical_backup_device_name_var }

}

其中大多参数在备份数据时已经介绍过了,下面介绍一些没有介绍过的参数:

l  ENABLE_BROKER:启动Service Broker以便消息可以立即发送。

l  ERROR_BROKER_CONVERSATIONS:发生错误时结束所有会话,并产生一个错误指出数据库已附加或还原。此时Service Broke将一直处于禁用状态直到此操作完成,然后再将其启用。

l  KEEP_REPLICATION:将复制设置为与日志传送一同使用。设置该参数后,在备用服务器上还原数据库时,可防止删除复制设置。该参数不能与NORECOVERY参数同时使用。

l  MOVE:将逻辑名指定的数据文件或日志文件还原到所指定的位置,相当于图18.14中所示的【将数据库文件还原为】功能。

l  NEW_BROKER:使用该参数在会在databases数据库和还原数据库中都创建一个新的service_broker_guid值,并通过清除结束所有会话端点。Service Broker已启用,但未向远程会话端点发送消息。

l  RECOVERY:回滚未提交的事务,使数据库处于可以使用状态。无法还原其他事务日志

l  NORECOVERY:不对数据库执行任何操作,不回滚未提交的事务。可以还原其他事务日志。

l  STANDBY:使数据库处于只读模式。撤消未提交的事务,但将撤消操作保存在备用文件中,以便可以恢复效果逆转。

l  standby_file_name | @standby_file_name_var:指定一个允许撤消恢复效果的备用文件或变量。

l  REPLACE:会覆盖所有现有数据库以及相关文件,包括已存在的同名的其他数据库或文件。

l  RESTART:指定SQL Serve 应重新启动被中断的还原操作。RESTAR从中断点重新启动还原操作。

l  RESTRICTED_USER:还原后的数据库仅供db_owner、dbcreator或sysadmin的成员才能使用。

l  STOPAT:将数据库还原到其在指定的日期和时间时的状态。

l  STOPATMARK:恢复为已标记的事务或日志序列号。恢复中包括带有已命名标记或 LSN 的事务,仅当该事务最初于实际生成事务时已获得提交,才可进行本次提交。

l  TOPBEFOREMARK:恢复为已标记的事务或日志序列号。恢复中不包括带有已命名标记或LSN的事务,在使用WITH RECOVERY时,事务将回滚。

二例子 、备份与还原

备份:

BACKUP DATABASE "mydb" TO DISK ='C:\mybak.bak' 

还原
use master
RESTORE DATABASE "mydb_hf" FROM DISK='C:\mybak.bak'
 WITH 
MOVE 'mydb_Data' TO 'c:\mydb20041217.mdf', --数据文件还原后存放的新位置
MOVE 'mydb_Log' TO 'c:\mydb20041217.ldf' ----日志文件还原后存放的新位置 或者 2 --创建备份设备 USE [master]
GO
EXEC master.dbo.sp_addumpdevice  @devtype = N'disk', @logicalname = N'beifen', @physicalname = N'D:\beifen.bak'
GO
--完整备份到备份设备中
BACKUP
DATABASE [student] TO  [beifen] WITH NOFORMAT, NOINIT,  NAME =
N'student-完整 数据库 备份', SKIP, NOREWIND, NOUNLOAD,  STATS = 10
GO
--还原完整备份
RESTORE DATABASE [student] FROM  [beifen] WITH  FILE = 1,  NOUNLOAD,  REPLACE,  STATS = 10
GO
--差异备份
BACKUP
DATABASE [student] TO  [beifen] WITH  DIFFERENTIAL , NOFORMAT, NOINIT, 
NAME = N'student-差异 数据库 备份', SKIP, NOREWIND, NOUNLOAD,  STATS = 10
GO
--事务日志备份
BACKUP LOG [student] TO  [beifen] WITH NOFORMAT, NOINIT,  NAME = N'student-事务日志  备份', SKIP, NOREWIND, NOUNLOAD,  STATS = 10
GO
--还原到最近状态
RESTORE DATABASE [student] FROM  [beifen] WITH  FILE = 1,  NORECOVERY,  NOUNLOAD,  STATS = 10
GO
RESTORE DATABASE [student] FROM  [beifen] WITH  FILE = 2,  NORECOVERY,  NOUNLOAD,  STATS = 10
GO
RESTORE LOG [student] FROM  [beifen] WITH  FILE = 3,  NOUNLOAD,  STATS = 10
GO

sql2012管理的更多相关文章

  1. 使用本地服务器组来管理局域网或公网上的SQLSERVER

    使用本地服务器组来管理局域网或公网上的SQLSERVER 测试的两台机器 Windows7 64位   SQLSERVER2005 SP5 Windows7 64位   SQLSERVER2012 S ...

  2. paip.sql2k,sql2005,sql2008,sql2008 r2,SQL2012以及EXPRESS版本的区别

    paip.sql2k,sql2005,sql2008,sql2008 r2,SQL2012以及EXPRESS版本的区别 作者Attilax ,  EMAIL:1466519819@qq.com  来源 ...

  3. Chapter 1 Securing Your Server and Network(2):管理服务的SIDs

    原文出处:http://blog.csdn.net/dba_huangzj/article/details/37927319 ,专题文件夹:http://blog.csdn.net/dba_huang ...

  4. 全易通人事考勤工资验厂管理系统软件创建连接SQL2000数据库的操作方法和说明

    全易通人事考勤工资验厂管理系统软件创建连接SQL2000数据库的操作方法和说明.全易通人事考勤工资验厂管理系统软件,有2种数据库,一个是ACCESS,另一个是SQL.不过由于ACCESS数据库比较小, ...

  5. C# DateTime的11种构造函数 [Abp 源码分析]十五、自动审计记录 .Net 登陆的时候添加验证码 使用Topshelf开发Windows服务、记录日志 日常杂记——C#验证码 c#_生成图片式验证码 C# 利用SharpZipLib生成压缩包 Sql2012如何将远程服务器数据库及表、表结构、表数据导入本地数据库

    C# DateTime的11种构造函数   别的也不多说没直接贴代码 using System; using System.Collections.Generic; using System.Glob ...

  6. SQL Server 2008 SQL2012 SQL2014 收缩日志 清空删除大日志文件

    SQL2008 SQL2012 SQL2014 的收缩日志 由于SQL2008对文件和日志管理进行了优化,所以以下语句在SQL2005中可以运行但在SQL2008中已经被取消:(SQL2005)Bac ...

  7. .NET Core中的认证管理解析

    .NET Core中的认证管理解析 0x00 问题来源 在新建.NET Core的Web项目时选择“使用个人用户账户”就可以创建一个带有用户和权限管理的项目,已经准备好了用户注册.登录等很多页面,也可 ...

  8. npm 私有模块的管理使用

    你可以使用 NPM 命令行工具来管理你在 NPM 仓库的私有模块代码,这使得在项目中使用公共模块变的更加方便. 开始前的工作 你需要一个 2.7.0 以上版本的 npm ,并且需要有一个可以登陆 np ...

  9. Spring基于AOP的事务管理

                                  Spring基于AOP的事务管理 事务 事务是一系列动作,这一系列动作综合在一起组成一个完整的工作单元,如果有任何一个动作执行失败,那么事务 ...

随机推荐

  1. @Resource注解(转)

    @Resource 注解被用来激活一个命名资源(namedresource)的依赖注入,在JavaEE应用程序中,该注解被典型地转换为绑定于JNDI context中的一个对象.Spring确实支持使 ...

  2. xampp环境安装swoole

    手动编译php运行环境经常遇到函数库依赖的问题,这个错误搞定了,又蹦出来那个错误,很棘手,为了快速搭建一个swoole开发环境,于是另辟蹊径,直接下载安装xampp for linux,然后在用xam ...

  3. git多人协作

    多人协作 当你从远程仓库克隆时,实际上Git自动把本地的master分支和远程的master分支对应起来了,并且,远程仓库的默认名称是origin. 要查看远程库的信息,用git remote: $ ...

  4. JS 网页打印解决方案

    这些日子真是太忙了,项目太多了公司总是加班,而且这些项目中好多都用到的打印,所以学习了一段时间js的打印. 其实原来只是用到了简单的功能,现在要深入的了解才发现原来ie的网页打印也是如此的强大. 以下 ...

  5. c++基础 之 面向对象特征一 : 继承

    class Base { public: void f() { cout<<"void f()"<<endl<<endl; } void f(i ...

  6. 漏掉的账目(用C语言去重)

    问题描述: 某财务部门结账时发现总金额不对头.很可能是从明细上漏掉了某1笔或几笔.如果已知明细账目清单,能通过编程找到漏掉的是哪1笔或几笔吗? 如果有多种可能,则输出所有可能的情况. 我们规定:用户输 ...

  7. 判断一个指定的Service是否存在的方法

    这是一个判断一个指定的Service是否存在的方法.它被用于监视一个Service是否由于已经运转,如果由于各种原因Service已经被停止了.这是在重新启动指定Service.它被用于一个Appli ...

  8. 关于Apacheserver的訪问控制

    Apache的訪问控制指对不论什么资源的不论什么方式的訪问控制. 一.基于主机或者IP地址的控制 这样的訪问控制基于訪问者的主机名或者IP地址,通过使用 Deny 和 Allow 指令.实现同意或者禁 ...

  9. asp.net MVC Razor 语法(2)

    变量是用于存储数据的命名实体. 变量 变量用于存储数据. 变量名必须以字母字符开头,不能包含空格和保留字符. 变量可以是某个具体的类型,指示其所存储的数据类型.字符串变量存储字符串值 ("W ...

  10. Spring MVC 完整示例

    在本例中,我们将使用Spring MVC框架构建一个入门级web应用程序.Spring MVC 是Spring框架最重要的的模块之一.它以强大的Spring IoC容器为基础,并充分利用容器的特性来简 ...