我做了一个testing,因为在Internet上访问时我工作的数据库非常慢:
我已经用最新的MSSMS安装了SQL Server 2014
我已经在路由器上打开了一个端口,并且向防火墙添加了一条规则。 另外,我启用了configurationpipe理器中的IP地址访问。 我从互联网上看到数据库
我只有一个表有5个logging,我们称之为tblEmployees索引字段
我在家里的电脑上运行它,没有任何东西正在使用互联网。 有35 Mbps的下行和3 Mbps的连接。 技术上没有交通
从我尝试远程连接到我的家用电脑的地方距离很短,不到100英里。 Tracert,平安很好
现在,当我在家庭networking的MSSMS中运行SELECT TOP 5 FROM tblEmployees时,我立即得到数据,但是当我使用MSSMS(或者我正在使用的程序,它是相同的)进行相同的远程数据时, 6秒。 对于“更大”的数据集来说更糟,比如“更大”的数据库就是300个客户端。 这就像几kB的数据,但我需要等待超过10秒钟才能打开一个表。
我上周读到这个可能是完整的。 AUTO_CLOSE被设置为OFF。
与此同时,我正在同一台PC上运行MySQL服务器,也可以访问Internet。 它工作得很快。 但是SQL Server工作起来非常慢。 这意味着这个问题与SQL Server的一些设置有关…但是哪一个?
看来你的工作负载对networking延迟非常敏感(尽pipe一个简单的SELECT不应该performance出这种行为)。
要进一步debugging,我需要一个SELECT语句的networking转储。 请执行以下操作: