所有 SharePoint 数据库均处于待恢复状态

所有 SharePoint 数据库均处于待恢复状态

停电后,一切都瘫痪了,所有 SharePoint 数据库都处于“恢复待定”状态。这是一个相对较新的安装,尚未进行备份(不要打我,我会自己做)。

当我尝试打开它们时,却无法像这样访问https://dba.stackexchange.com/questions/21817/sql-server-2008-the-database-dbname-is-not-accessible 但是直到发生故障之前权限都很好,所以我认为不是这样。目前我无法为不可访问的数据库分配权限,因为它们会抛出不可访问的错误。

我尝试从头开始重新启动所有内容,确保在 SQL 服务启动之前存储、见证磁盘等可用 - 同样的问题。

该 SQL 上的所有非 SharePoint 数据库都运行良好,可以工作、响应并且完全可用。SQL
2014,集群。SP 2016。
请提供建议。

答案1

我们在卷上遇到了类似的 SharePoint DB 情况,该卷的驱动器空间不足。扩展卷后(您不需要执行此操作)...

打开 SQL Server Management Studio,右键单击每个数据库,选择“所有任务”“脱机”。然后选择“联机”。

数据库已安装,“恢复待处理”消息消失。

答案2

在恢复过程完成之前,您将无法访问数据库。

您可以使用恢复功能让它们重新上线,如下所示:

RESTORE DATABASE YourDatabase WITH RECOVERY

在恢复过程中,您可以像这样检查状态/进度(来自本文, 以供参考:

DECLARE @DBName VARCHAR(64) = 'databasename'

DECLARE @ErrorLog AS TABLE([LogDate] CHAR(24), [ProcessInfo] VARCHAR(64), [TEXT] VARCHAR(MAX))

INSERT INTO @ErrorLog
EXEC master..sp_readerrorlog 0, 1, 'Recovery of database', @DBName

SELECT TOP 5
     [LogDate]
    ,SUBSTRING([TEXT], CHARINDEX(') is ', [TEXT]) + 4,CHARINDEX(' complete (', [TEXT]) - CHARINDEX(') is ', [TEXT]) - 4) AS PercentComplete
    ,CAST(SUBSTRING([TEXT], CHARINDEX('approximately', [TEXT]) + 13,CHARINDEX(' seconds remain', [TEXT]) - CHARINDEX('approximately', [TEXT]) - 13) AS FLOAT)/60.0 AS MinutesRemaining
    ,CAST(SUBSTRING([TEXT], CHARINDEX('approximately', [TEXT]) + 13,CHARINDEX(' seconds remain', [TEXT]) - CHARINDEX('approximately', [TEXT]) - 13) AS FLOAT)/60.0/60.0 AS HoursRemaining
    ,[TEXT]

FROM @ErrorLog ORDER BY [LogDate] DESC

一旦该过程完成,假设没有损坏,数据库应该再次可以访问。如果不能,您可能需要调查损坏和/或其他错误,如下所示:

DBCC CHECKDB (‘YourDBname’) WITH NO_INFOMSGS, ALL_ERRORMSGS

相关内容