DBCC CHECKDB失败并退出作业,模糊的错误消息

我收到了一个通知:我们的一台服务器(Win Enterprise 2008集群上的SQL Server 2008集群)DBCC CHECKDB在所有数据库运行过去四次都失败了。 在此之前我们没有任何数据,但看起来并不像它已经成功了一段时间。 只有日志文件中没有错误:

DBCC results for 'sys.sysxmlfacet'. [SQLSTATE 01000] Msg 0, Sev 0, State 1: Unspecified error occurred on SQL Server. Connection may have been terminated by the server. [SQLSTATE HY000] There are 112 rows in 1 pages for object "sys.sysxmlfacet". [SQLSTATE 01000] 

我使用sp_MSForEachDB运行DBCC CHECKDB以获得更准确的结果,并且在同一个数据库上有相同的错误,但在单独的点上:

 DBCC results for 'NameValuePair_Greek_CI_AS'. [SQLSTATE 01000] Msg 0, Sev 0, State 1: Unspecified error occurred on SQL Server. Connection may have been terminated by the server. [SQLSTATE HY000] There are 0 rows in 0 pages for object "NameValuePair_Greek_CI_AS". [SQLSTATE 01000] 

另外,错误日志指出DBCC没有错误地为这个数据库完成。

我不知道如何跟踪这个模糊的问题,只发生在这个服务器上的数十个数据库。 任何帮助表示赞赏!

编辑回答评论:
它通过SQL Server代理在本地运行。 我们认为它可能是唯一的,因为它是在一个Win2008集群,它可能会失败,因为现在数据库是太大了(880GB,但没有像在同一硬件/软件上运行相同的工作许多其他数据库一样大) ,但是我们没有任何证据表明发生了连接问题的故障转移。 故障转移通常会发出如此多的标志和警告,他们很难错过。 打破数据库可能是我们下一个故障排除措施,但在那之前,我们只是想了解为什么这个工作运行如此奇怪。

如果错误日志说CHECKDB完成了,那么它就是 – 这是CHECKDB在退出之前最后一件事情。

打印结果时,这看起来像是客户端问题。 当我在SQL Server 2005开发过程中编写DBCC CHECKDB时,根据输出的行数,有时会出现各种各样的客户端的时髦问题 – 例如,SSMS将只打印CHECKDB中的前1000个错误,否则会导致内存不足

几件事情要尝试:

  1. 运行WITH ALL_ERRORMSGS,NO_INFOMSGS(这是我总是推荐人们运行的方式)
  2. 使用sqlcmd而不是SSMS运行它

  3. 从SQLCMD运行它并使用SQLCMD -o开关将结果传输到文件

谢谢