在BACKUP LOG WITH NORECOVERY之后,SQL Server数据库停留在恢复状态

时间:2016-08-28 21:54:15

标签: sql-server database sql-server-2012

使用SQL Server Management Studio还原数据库但是"使用NORECOVERY"进行尾部日志备份。已经过检查,用户没有权限恢复数据库。

所以按此顺序执行的T-SQL命令(在SQL Server Management Studio中生成):

BACKUP LOG [database] 
TO DISK = N'...DatabaseBackup_2016-08-28_14-07-05.bak' 
WITH NOFORMAT, NOINIT,  
     NAME = N'...DatabaseBackup_2016-08-28_14-07-05', NOSKIP, NOREWIND,
     NOUNLOAD,  NORECOVERY, STATS = 5

执行确定

RESTORE DATABASE [database] 
FROM DISK = N'....database.bak' 
WITH FILE = 1.....

失败(用户没有权利进行RESTORE)

RESTORE DATABASE <database> WITH RECOVERY 

由于许可而无法正常工作

所以问题是如何从恢复状态释放数据库以及服务器如何允许我在未经许可的情况下将数据库设置为恢复状态?

1 个答案:

答案 0 :(得分:0)

BACKUP和RESTORE操作的权限不同。

https://msdn.microsoft.com/en-us/library/ms186858.aspx

https://msdn.microsoft.com/en-us/library/ms186865.aspx

,因此用户可能有权备份日志并将其置于还原模式,但可能没有恢复数据库的权限。

修改用户权限,它应该有效。