我刚刚将一台大型SQL Server数据库(db文件大小约为25G,日志大小约为20G)从一台计算机移动到另一台计算机。然后突然在旧机器中以1秒返回的查询将在新构建的机器中运行超过1分钟(更强大)。
旧机器是双核Intel I3,配备4g内存。新机器是四核Intel I7,配备16g内存。
我检查了索引是完全一样的。
可能是什么原因?
编辑:
没有更新数据库统计信息。会这样做。 没有解析索引。也会这样做。 操作系统:旧机器运行Windows Server 2008.新机器运行Windows Server 2012。 硬盘:SSD raid 1.本地物理驱动器。分为两个逻辑驱动器,一个用于数据库存储,另一个用于日志存储。
新机器正在以完整的性能设置运行。它是一台机器,与其他机器没有任何平衡。 它专门用于这个数据库任务,机器上没有其他任何东西在运行。
答案 0 :(得分:2)
可能有多种原因。这是本地硬盘还是网络硬盘?
最可能的原因是上面的2或4
作为一般建议,为了获得更好的性能,请将db文件和日志文件存储在不同的硬盘上(而不仅仅是不同的分区)。