我现场遇到一位HP PolyServe和SQL Server 2005出现奇怪问题的客户,我想知道是否有其他人打它。
问题是,使用默认设置,DBCC CHECKDB将在由PolyServe托pipe存储支撑的数据库上失败。 这是因为DBCC CHECKDB(默认情况下)使用隐藏的数据库快照,它存储在现有数据库数据文件的NTFS备用stream中,默认情况下PolyServe不支持NTFS备用stream。
现在 – 我知道为什么发生这种情况(我写了DBCC CHECKDB),我知道如何解决它(创build自己的快照和检查,或恢复备份和检查,或使用WITH TABLOCK作为最后的手段) – 所以我不想要解释这些事情的答案。
我想知道的是以下几点:
编辑:顺便说一句 – 最后升级到PolyServe 3.6.1是默认情况下closures选项,导致DBCC CHECKDB失败。 我们正试图弄清楚为什么默认情况下它从ON变为OFF。
在此之前,我试图在网上find一些信息。
谢谢!
PS如果您想了解为什么DBCC CHECKDB使用快照的背景,请参阅我在CHECKDB的CHECKDBD内部长篇博文。 从各个angular度:完整描述所有CHECKDB阶段 。
我find了答案。 如果你安装3.6.1,那么你没事。 如果从较早版本升级,则需要通过命令显式启用备用stream,他们称之为psfscheck,每个卷都启用它们。 他们的支持还说,你可以使用这个命令来启用8.3名称支持 – 这使我相信他们只是在调用NTFS fsutil命令。
不幸的是,它需要强制卸载PS卷来做到这一点。 尼斯。
感谢那些虽然回应。
PS支持文档的链接在这里
我们正在运行3.6.1,并没有任何SQL 2005 DBCC作业的问题。 你知道Polyserve的这个设置是在哪里修改的,所以我可以看看我们是否已经启用了?
编辑:关于你的答案。 我们是一个新鲜的3.6.1安装,而不是升级,所以这似乎匹配你发现。