每次运行查询时,我的数据库都不会立即响应第二个查询,并抱怨它处于恢复模式(尽管它不显示数据库名称之外的任何内容)。这大约会发生5-10分钟,之后一切都会恢复正常。
我预计会发生严重的崩溃,所以我将表复制到另一个数据库中,但是有人知道为什么会发生这种情况吗?或者是否有永久的修复方法?
发布于 2011-08-05 10:43:12
通常,数据库仅在启动期间(即SQL Server启动数据库时)处于“恢复”模式。如果您的数据库因为SQL语句而进入恢复模式,则几乎肯定会发生某种损坏。
这种损坏可以采取多种形式中的一种,并且很难诊断。在你做任何事情之前,你需要检查一些事情。
中的问题。
在第4步、第5步和第6步之后,再次运行查询,看看是否可以使数据库进入恢复模式。不幸的是,腐败的发生可能有无数的原因,但比任何事情都更重要的是数据。它将确认您的数据或其他地方是否有问题。只要您有可以还原到其他SQL Server的备份,并且还原的副本不会连续进入恢复模式,您就不必太担心。
我总是把6放在最后,因为使用SQL server设置单独的服务器和移动/恢复大型数据库可能会花费大量时间;但如果您已经有了备份/测试服务器,这可能是一个很好的首选。毕竟,它不会给您的实时服务器造成任何停机。
最后,不要害怕与微软联系。数据库通常是任务关键型的,Microsoft有很多工具可以用来诊断这样的问题。
发布于 2012-01-22 03:00:03
回答晚了...
您的数据库是否将autoclose设置为true?设置后,DBMS必须使数据库联机,这可能会说明您的症状
发布于 2012-09-28 23:11:45
当SQL Server服务在写入操作过程中严重停机时,有时在服务器启动期间处于模式期间,就会发生这种情况。请按照此链接中的查询进行监控
http://errorbank.blogspot.com/2012/09/mssql-server-database-in-recovery.html
https://stackoverflow.com/questions/6950401
复制相似问题