• sql2012管理


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

    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:eifen.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
  • 相关阅读:
    第三次作业
    第二次作业
    第一次作业—编译原理概述
    第六次课堂作业——正规文法与正规式
    词法分析程序的设计与实现
    1702第四次作业(文法和语文总结与梳理)
    1702第三次作业(语法树,短语,直接短语,句柄)
    软工1702第一次作业(简述编译程序)
    random库的使用
    基本的字符串之切片
  • 原文地址:https://www.cnblogs.com/zjwei55/p/5128633.html
Copyright © 2020-2023  润新知