我有开发和UAT环境。 Dev就在我们的位置,UAT在客户的位置。
我们的DEV机器是XEON 4核心@ 2,33GHz,带有Windows Server 2003的4Go RAM UAT物理机器完全相同,但使用虚拟机(在VMWare下)。 我不知道这个VM使用的确切参数。
问题是开发机器上的SQL Server运行得很好,UAT上的SQL Server非常慢。
在UAT计算机上打开SQL Server Management Studio需要2分钟。运行一个简单的选择请求也很慢。 数据库非常小(6 GB)。 在该服务器上打开任何其他应用程序效果很好。
所以我们认为sql server实例存在问题,我必须调查才能找到原因。
这是我检查的内容:
在数据库日志中似乎发现此错误至少一次(我只能访问一小部分):
2008-10-14 19:16:54.84 spid55
自动增长文件'xxxxx_log' 数据库'xxxxxx'被取消了 用户或6766后超时 毫秒。使用ALTER DATABASE 为。设置较小的FILEGROWTH值 此文件或显式设置新文件 文件大小。
由于硬盘上有足够的空间,可能是什么原因? 它可能与我的性能问题有关吗? 我应该检查什么来找出问题的原因?
我不是SqlServer专家,所以如果有人有任何建议,我很乐意听到。 谢谢!
更新1:
SQL Server恢复模型:完整
数据库是新的,所以到目前为止我们没有进行任何备份
我不知道日志文件的大小,我会检查一下。
更新2:
Management Studio问题已解决。
这是因为服务器上没有Internet访问,并且Management Studio在启动时似乎尝试连接: http://weblogs.sqlteam.com/tarad/archive/2006/10/05/13676.aspx
但似乎性能问题与此问题无关。还在寻找。
答案 0 :(得分:1)
如果它不是处理器问题,我想知道网络是否配置不当。如果它正在尝试几件事并等待连接超时等,那可能会让事情变得非常痛苦。
答案 1 :(得分:1)
听起来像是一个虚拟机问题。当“在UAT计算机上打开SQL Server Management Studio需要2分钟”时 - 如果您在那段时间没有连接到SQL Server,那么SQL Server实例在这么慢的时候几乎没有什么可玩的。
如果您的意思是连接到本地SQL Server需要2分钟,那么我会查看内存和VM设置。
答案 2 :(得分:1)
是否启用了处理器的虚拟化扩展?禁用它们可能会导致性能损失。
答案 3 :(得分:1)
1 /检查SQL Server消耗了多少RAM。对于4GB RAM服务器上的小型数据库,我将SQL Server设置为仅增长到最大1GB(1024MB)的RAM。
2 /我检查数据库文件和LOG文件的自动增长大小。我们避免使用百分比增长并使用固定的MB增长大小(如增长1MB块)。
3 /确保定期备份您的交易日志,否则它们会不断发展壮大。 (同时备份完整的数据库!)
4 /你有什么磁盘设置?对于高IO系统(使用镜像数据驱动器),请避免使用RAID 5,将LOGS和DATA文件放在不同的磁盘上,检查RAID阵列是否配置正确。是否有其他系统使用磁盘?
5 /使用SQL事件探查器检查服务器实际执行的操作。您可能会惊讶于某些SQL代码在繁忙的计算机上运行有多糟糕(以及它在专用计算机上的运行情况)。
祝你好运。