SqlServer2016数据库备份/恢复

SqlServer2016数据库备份

在要备份的数据库名称上右键 > 任务 > 备份
SqlServer2016数据库备份/恢复

使用“添加”按钮来添加一个备份的位置,一般默认文件扩展名为.bak
其他选项、参数可以根据需要酌情进行设置
SqlServer2016数据库备份/恢复

点击“确定”进行备份
SqlServer2016数据库备份/恢复


SqlServer2016数据库恢复

数据库的恢复模式默认为“完整”模式,本次测试即在该默认模式下进行恢复

在“数据库”上右键,选择“还原数据库”
SqlServer2016数据库备份/恢复

选择一个备份文件
SqlServer2016数据库备份/恢复

可以按时间更改要恢复的数据
SqlServer2016数据库备份/恢复

在“选项”中设置相关设置
SqlServer2016数据库备份/恢复

点击“确定”开始还原数据库
SqlServer2016数据库备份/恢复


有关问题及概念

  • 什么是Replication?
    类似于Oracle GoldenGate,是SqlServer发布的应用于数据库分布式和同步的一款软件,一般用于读写分离,分散服务器的读写压力。

  • 保留复制设置(Keep_Replication)
    如果原始库设置过Replication功能,那么在恢复数据库时可以勾选此选项,表示将原始库里做的Replication相关功能设置一并还原回来。
    如果原始库没有设置过该功能,那么恢复数据库时不需要勾选此选项。
    SqlServer2016数据库备份/恢复

  • 还原时报错"因为数据库正在使用,所以无法获得对数据库的独占访问权"
    SqlServer2016数据库备份/恢复

  • 单用户模式下无法连接、访问、操作数据库
    SqlServer2016数据库备份/恢复

    • 方法1:如果数据库此时可以访问,可将“限制访问”的值由“SINGLE_USER”更改为“MULTI_USER”
      SqlServer2016数据库备份/恢复

    • 方法2:如果此时数据库无法连接、操作,可通过命令来更改
      新建一个查询,全选并执行如下代码

USE master;  
GO  
DECLARE @SQL VARCHAR(MAX);  
SET @SQL=''  
SELECT @SQL=@SQL+'; KILL '+RTRIM(SPID)  
FROM master..sysprocesses  
WHERE dbid=DB_ID('CobraDGServer');  

EXEC(@SQL);
ALTER DATABASE CobraDGServer SET MULTI_USER;

此处的“CobraDGServer”位置写入的是要更改的实际的数据库名称
新建查询并粘贴代码后,需要将所有代码全选,然后点击执行;如果粘贴代码后不选择代码,直接在粘贴完的状态下点击执行,则执行不成功,提示死锁(指定的数据库不对,不是master);或者,新建查询后,手动在左侧下拉框中提前选择好master数据库,而不是默认的CobraDGServer。

上一篇:在JSP中使用BootStrap


下一篇:配置mysql的group replication过程以及遇到的错误