2008-10-16 120 views
2

我有一个开发和UAT环境。 Dev在我们的位置,UAT在客户的地方。SQL Server 2005性能问题

我们的DEV机器是XEON 4核心@ 2,33GHz,4Go RAM与Windows服务器2003 UAT物理机器完全相同,但使用虚拟机(在VMWare下)。 我不知道这个VM使用的确切参数。

问题是开发机器上的SQL Server运行得很好,UAT上的SQL Server运行速度非常慢。

在UAT机器上打开SQL Server Management Studio需要2分钟。即使是简单的选择请求也很慢。 数据库非常小(6 GB)。 在该服务器上打开任何其他应用程序都能正常工作。

因此我们认为sql server实例存在问题,我必须调查以找出原因。

这里是我的检查:

  • 服务器配置是一个类似于我们对DEV。
  • 存在磁盘上
  • 处理器不超载足够的空间(用10%达到最大)
  • 记忆似乎也是确定。
  • 数据和日志文件将增长自动
  • SQL Server恢复模型:FULL

似乎在数据库日志中,这个错误至少有一次发生(我只能访问一小部分) :

2008-10-14 19:16:54.84 spid55
自动增长文件中 数据库 'xxxxx_log' 'XXXXXX' 由 用户取消或6766 毫秒超时后的一次哔声。使用ALTER DATABASE至 为此文件设置较小的FILEGROWTH值为 或明确设置新的 文件大小。

由于硬盘上有足够的空间,可能是什么原因? 它可能与我的perfs问题有关吗? 我应该检查什么来找出问题的原因?

我不是SqlServer专家,所以如果有人有任何建议,我很乐意听到它。 谢谢!


更新1:
SQL Server恢复模型:FULL
数据库是新,所以到目前为止,我们没有执行的任何备份。
我不知道日志文件的大小,我会检查一下。

更新2:
Management Studio问题已解决。 http://weblogs.sqlteam.com/tarad/archive/2006/10/05/13676.aspx

但似乎PERF问题未链接到这个问题:

它是由一个事实,即没有在服务器上,并且Management Studio中似乎试图启动时连接上网而引起的。仍在搜索中。

+0

在最初的缓慢时期之后它总是缓慢或“暖起来”吗? – Constantin 2008-10-16 16:04:37

回答

1

如果这不是处理器问题,我想知道网络是否没有正确配置。如果它尝试了几件事,并等待连接超时等,那可能会让事情变得非常痛苦。

+0

你说的很对:管理工作室的问题已解决: http://weblogs.sqlteam.com/tarad/archive/2006/10/05/13676.aspx 问题原因是因为没有访问互联网在服务器上 – 2008-10-27 11:27:52

1

听起来像虚拟机问题。当“打开SQL Server Management Studio在UAT机器上需要2分钟”时 - 如果您在那段时间内没有连接到SQL Server,那么SQL Server实例在缓慢运行中几乎没有任何作用。

如果你的意思是连接到本地SQL Server需要2分钟,那么我会查看内存和虚拟机设置。

1

是否启用了处理器的虚拟化扩展?禁用这些可能会导致相当的性能损失。

+0

的确,这些可能因为害怕hypervisor rootkit而被禁用。 – Constantin 2008-10-16 16:06:20

1

1 /检查SQL Server消耗了多少内存。对于4GB RAM服务器上的小型数据库,我将SQL Server设置为仅增长到最大1GB(1024MB)的RAM。

2 /我检查DB文件和LOG文件的自动增长大小。我们避免使用百分比增长并使用固定的MB增长大小(例如增长为1MB块)。

3确保定期备份您的交易日志,否则它们只会增长并增长。 (同时备份完整数据库!)

4 /你有什么磁盘设置?为高IO系统避免使用RAID 5(使用镜像数据驱动器),将LOGS和DATA文件放在不同的磁盘上,检查RAID阵列配置是否正确。有其他系统使用磁盘吗?

5 /使用SQL事件探查器来检查服务器实际在做什么。您可能会惊讶于某些SQL代码在繁忙的机器上运行的糟糕程度(以及它在专用机器上的运行情况)。

祝你好运。