sql-server – 为什么SQL Server在事件日志中说“启动数据库”,每秒两次?

前端之家收集整理的这篇文章主要介绍了sql-server – 为什么SQL Server在事件日志中说“启动数据库”,每秒两次?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个sql Server [2012 Express with Advanced Services]数据库,其中没有太多.我正在使用EF Code First开发应用程序,并且由于我的模型仍然处于通量状态,数据库每天被丢弃并重新创建几次.

今天早上,我的应用程序第一次运行时无法连接到数据库.在调查中,似乎数据库处于“Recovery Pending”模式.

查看事件日志,我可以看到sql Server已经记录:

Starting up database (my database)

大概每秒钟大约两次. (事件日志已经填满了,所以昨天晚上我看不到).

这些“信息”日志条目在今天早上6点左右停止,紧接着是一个“错误”日志条目,说:

There is insufficient memory in resource pool ‘internal’ to run this query

我的数据库发生了什么事?

注意:我可以将网络应用程序在“调试”模式下运行一夜之间 – 尽管没有任何人“开车”,我无法想像会有太多的数据库流量(如果有的话).

还值得一提的是,我在数据库中有一个全文目录(虽然如我所说,目前DB几乎没有任何实际的内容).

我不得不说,这是令人担忧的 – 如果这是发生在我的生产数据库,我不会高兴!

解决方法

使用AUTO_CLOSE ON时,一旦与其建立连接,数据库将立即关闭,并且每次建立连接时,重新打开(运行恢复,尽管是快节奏的).所以你看到这个消息,因为你的应用程序每2秒会连接到数据库.你可能总是有这种行为,从来没有注意过.现在你的数据库崩溃了,你调查了日志并发现了这个问题.虽然现在你知道并且很可能会解决它,但这并不能解决你真正的问题,即数据库的可用性.

所以现在你有一个数据库不会出现恢复,你做什么?您从上次备份还原并应用您的disaster recovery plan.真的,这就是它的一切.而别无选择.

如果你想了解为什么崩溃发生了(可能是大概1个原因),那么你需要联系CSS(产品支持).他们有办法指导你进行调查.

原文链接:https://www.f2er.com/mssql/81966.html

猜你在找的MsSQL相关文章