我有一个SharePoint服务器。备份工具出现问题,现在我的某些数据库处于还原状态!
是否可以停止还原过程?而且,如何确保数据库完整性没有受到损害?
我有一个SharePoint服务器。备份工具出现问题,现在我的某些数据库处于还原状态!
是否可以停止还原过程?而且,如何确保数据库完整性没有受到损害?
Answers:
这很可能是由于还原脚本添加了WITH NORECOVERY
参数,以使数据库准备好在事务处理后应用事务日志。
现在,数据库正在等待最新的事务日志文件。
您可以:
RESTORE LOG database_name FROM backup_device WITH RECOVERY;
... 应用最新的事务日志,或者... WITH RECOVERY;
...或RESTORE DATABASE YourDb WITH RECOVERY;
在执行此操作之前,请确保您了解这些选项的含义。如果不小心,可能会导致数据丢失。
详情请参见:
解决此问题的简单T-SQL脚本:
在“新查询”窗口上编写此脚本并执行:
RESTORE DATABASE [DataBase Name] WITH RECOVERY;
我只是遇到这种情况,而且治愈方法非常令人惊讶:
ALTER DATABASE DBName SET ONLINE;
显然,中断的NetBackup还原使它处于怪异状态。没有其他解决方案有效(尽管我尚未尝试重新启动SQL Server服务)
不过,我会谨慎对待数据库,因为从理论上讲,一旦还原开始,然后失败,则可能损坏了数据。无论如何,我还是要再次还原数据库,所以这对我来说无关紧要。
ALTER DATABASE
不允许这样做,我向你保证,在我的情况下,数据库实际上显示在恢复状态,并使用SET ONLINE
事实上的工作。因此,请意识到您称我为错误或撒谎。当有替代方案时,您真的需要做的是吗?
ONLINE
状态。长话短说,我认为您对此网站的评论和投票不合时宜,您的信息实际上是错误的,因为它与我提供的数据不符。
众所周知,默认的数据库还原选项与Recovery一起使用,可确保数据库还原完成后数据库可用并可以联机使用。
例:
RESTORE DATABASE YourDB FROM DISK= 'C:\\Data\\YourDBBackup.bak'
WITH RECOVERY
GO
让我们来看看有关无恢复还原的要点
还原无恢复
此选项特别在要还原多个备份时使用。这意味着,当您执行带有norecovery选项的restore命令时,意味着直到顺序恢复上一次备份后,数据库才会释放给用户。在上次备份中,使用了“恢复”选项,并且数据库联机。
例:
RESTORE DATABASE YourDB FROM DISK - 'C:\\Data\\Backup_part1.bak'
WITH NORECOVERY
GO
接着:
RESTORE LOG YourDB FROM DISK = 'C:\\Data\\BackupLog-part2.trn'
WITH RECOVERY
GO
RESTORE ...WITH NORECOVERY
选项的所有选项。你能再检查一遍吗?