22

在没有更改任何内容后,我尝试使用我的网站的注册页面,突然出现以下错误消息:

数据库“x”的日志不可用。检查事件日志以获取相关的错误消息。解决所有错误并重新启动数据库。

说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

我尝试重新打开程序和数据库,尝试刷新数据库,但没有任何效果。可能是什么问题?

4

3 回答 3

47
  • 使数据库脱机。
  • 把它重新上线。
  • 运行 DBCC checkdb 以确保一切正常。
  • 设置自动关闭 = False。
于 2013-10-06T06:59:40.260 回答
4

可能是数据库设置为 AutoClose,或设置为 OFFLINE,或者在 SQL Server 服务未运行时,.ldf 文件被其他人或工具删除或损坏/压缩。

制作 MDF 文件的副本,您可以尝试使用以下方法附加它:

CREATE DATABASE mydb_copy ON (filename = 'C:\path to.mdf')
  FOR ATTACH_REBUILD_LOG;

否则,开始寻找备份...

于 2013-04-02T18:21:13.983 回答
2

太多的事情会导致这种情况。我有同样的问题,您可以尝试使数据库脱机并重新联机(或重新启动 MSSQL)。通常它会有所帮助。如果这不能帮助您尝试以下解决方案:

  1. 对于 SQL Server 2008 和 2005,请尝试安装最新的 SP
  2. 运行DBCC CHECKDB ('DatabaseName')并查看发现的错误
  3. 检查 Windows 日志和 SQL Server 日志以获取更具体的错误代码
  4. 有些人找到将数据库上的自动关闭选项设置为 FALSE 的解决方案
  5. 这种情况背后的原因可能是由于服务器的 IO 或内存不佳
于 2013-06-21T11:42:17.737 回答