SQL Server中的数据库处于恢复模式

Jos*_*bas 2 database sql-server recovery

我在Microsoft SQL Server中有两个数据库(在同一台服务器上).其中一个可以远程成功访问.但是,其他没有.它在错误日志中返回以下消息:

用户'adminUsr'登录失败.原因:无法打开显式指定的数据库'alg_test.alg_test'.[客户:]

错误:18456,严重性:14,状态:38.

然后我转到Microsoft SQL服务器管理并检查数据库的状态:

*SELECT databasepropertyex('alg_test.alg_test', 'STATUS')*
Run Code Online (Sandbox Code Playgroud)

得到了这个:

RECOVERING

似乎数据库不断恢复.我怎样才能解决这个问题?最后远程访问数据库.

Dan*_*man 9

检查SQL Server错误日志以查看数据库正在恢复的原因.一个常见原因是使用NORECOVERY完整备份,差异备份和日志备份选项还原了数据库,但未RECOVERY在上次还原时指定.在这种情况下的解决方案很简单RESTORE <your database> WITH RECOVERY;.

另一个常见原因是由于大数据修改操作而导致事务日志填满,而SQL Server正在将事务回滚以恢复数据库,这可能需要相当长的时间.错误日志将包括恢复进度消息.它比你想要等待的时间长,从备份恢复数据库可能更加迅速.

  • 如果`RESTORE DATABASE mydatabase WITH RECOVERY`不适合您,那么尝试使db脱机然后将其联机. (2认同)