SQL Server2016数据库备份/恢复

数据库备份

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

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

点击“确定”进行备份


数据库恢复

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

在“数据库”上右键,选择“还原数据库”

选择一个备份文件

可以按时间更改要恢复的数据

在“选项”中设置相关设置

点击“确定”开始还原数据库


有关问题及概念

什么是Replication?

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

保留复制设置(Keep_Replication)

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

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



方法1:还原时勾选“关闭到目标数据库的现有连接”


方法2:将数据库脱机



参考资料:https://www.cnblogs.com/MrYuanly/p/5828636.html

单用户模式下无法连接、访问、操作数据库



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


方法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。

windows群集中如何恢复SQL Server数据库

windows群集中恢复数据库与在独立实例上恢复是一样的,只需在活跃节点上进行还原操作即可。
参考:https://social.technet.microsoft.com/Forums/zh-CN/93e0005d-1ac0-4afe-a69c-0058ec64ca15/windowssqlserver?forum=sqlserverzhchs

原文地址:https://www.cnblogs.com/caishuaichao/p/14307633.html