2个SQL服务器但不同的tempdb IO模式在1个峰值上下5MB /秒-0.2MB /秒

时间:2014-09-01 11:08:58

标签: sql sql-server database sql-server-2012 windows-server-2008

我有2个MSSQL服务器(让我们调用SQL1和SQL2)运行总共1866个数据库

  • SQL1有993个数据库(993203个注册用户)
  • SQL2有873个数据库(931259个注册用户) 每个SQL服务器都有一个InternalMaster数据库的副本(对于某些共享表数据),然后是多个客户,每个客户1个数据库(客户/客户端不是注册用户)。

在撰写本文时,我们在线使用我们的软件的用户超过10,000名。

SQL2的行为与预期的一致,数据库I / O通常为0.2MB /秒,并且在正常流程中上下移动,IO以某种随机方式上升到某些报告和查询等等。 SQL2 Database I/O and Batch Requests

然而,SQL1有一个恒定的模式,几乎就像一个生命支持机器。 SQL1 Database I/O and Batch Requests

我不明白为什么两台具有相同基础设施的服务器工作方式如此不同?尖峰以大约2MB /秒的速度开始,然后增加到大约6MB /秒的最大值。两台服务器都具有相同的IOPS规定,包括数据,日志和事务分区以及相同的AWS规范。数据文件I / O显示tempdb是此峰值的罪魁祸首。

SQL1 Data File IO

任何建议都会很棒,因为我无法理解在两台服务器上运行相同的软件和设置时,1 tempdb与另一个不同的行为。

此致

利安

1 个答案:

答案 0 :(得分:1)

利安,

请参阅此网站,了解如何配置TEMPDB。通过查看图像,您只有一个TEMPDB数据库文件。

http://www.brentozar.com/sql/tempdb-performance-and-configuration/

希望这有帮助