有没有人有从 SQL Server 2008R2 升级到 2016 的经验?
我们的系统在 2008R2 上运行良好,但升级到 2016 后,我们遇到了高 tempdb 争用。
我们看到 PAGELATCH_SH 上的大量阻塞等待 tempdb 对象。PLE 为 99.98%。MAXDOP 为 6(机器有 8 个核心/NUMA)。MAXDOP 阈值为 50。
随机查询的运行时间超过 30 秒,但是当我尝试从 SSMS 运行相同的查询时,它们会运行亚秒级,这验证了阻塞是问题所在。我们目前使用 16 个临时文件,今晚增加到 34 个。
我们今天发现 tempdb 日志的 io_stall_write_ms 超过 200,000 毫秒,我们今晚将其移至 SAN,但我不相信它解释了页面锁存器的长时间等待。
我的想法已经走到了尽头。有没有人有什么建议?