sql sever第一次连接为啥很慢?

时间:2022-02-09 16:57:55
ado.net连接sql sever2008,每次开机第一次调试连接数据库比较慢,大约6s左右。我只是做了一个登录窗体,登录button点击后连接数据库,验证用户名和密码,窗体上显示系统时间(1s更新一次时间),出现的问题是第一次调试时候窗体会卡住6s左右,之后显示的系统时间直接向后跳6s左右,数据库也连接成功。第二次调试的时候就很快,不到1s吧。现在不明白为啥第一次连接比较慢,大家的登录窗体这块怎么实现?我常见的窗体登录是需要一段时间,但窗体颜色深度都会调整。

14 个解决方案

#1


上代码! sql sever第一次连接为啥很慢?

#2


你每次开机第一次调试是在什么时候,开机后马上调试吗
还是说只要是第一次调试,哪怕开机2个小时了再调试也是慢?

#3


引用 2 楼 Z65443344 的回复:
你每次开机第一次调试是在什么时候,开机后马上调试吗
还是说只要是第一次调试,哪怕开机2个小时了再调试也是慢?


只要是开机后(机子正常启动后)的第一次执行调试,连接会很慢,之后再连接就很快

#4


我觉得你不是连接数据库慢,而是网站第一次打开慢.
你可以用第三方数据库客户端工具,或者自己做个小winform程序来测试到底慢在哪里

#5


或者网站第一次访问之后,重启IIS,再访问,看是否慢

#6


我记得有工具可以测试每个步骤到底耗费多少时间的,可以测试一下
如果你的网站要在第一次登陆跳转到主页的时候加载dll,初始化一大堆实体类,那么慢也是可以理解的了

#7


我用的就是winform,代码也很简单,就是字符串连接数据库的几行语句

#8


那你先看看服务里数据库服务的状态吧
是否第一次访问的时候服务才动态启动

#9


代码就是数据库连接最简单的那几句,还在宿舍电脑上

#10


第一次连接的时候因为要去创建物理连接(复杂的握手,认证过程),所以慢。

#11


不应该问为什么第一次慢,应该问为什么后面的快。

答案是有优化的结果。快不是自然而然的。

#12


你是否使用trusted连接。这个是很慢的。特别第一次。最好用数据库用户连接。

#13


大家的数据库连接一般需要多久?

#14


我窗体上显示系统时间,连接过程时间会卡主几秒,连接之后显示的会跳过这几秒时间,大家的连接过程好像很流畅,怎么实现的?一般情况下数据库的连接要多久?

#1


上代码! sql sever第一次连接为啥很慢?

#2


你每次开机第一次调试是在什么时候,开机后马上调试吗
还是说只要是第一次调试,哪怕开机2个小时了再调试也是慢?

#3


引用 2 楼 Z65443344 的回复:
你每次开机第一次调试是在什么时候,开机后马上调试吗
还是说只要是第一次调试,哪怕开机2个小时了再调试也是慢?


只要是开机后(机子正常启动后)的第一次执行调试,连接会很慢,之后再连接就很快

#4


我觉得你不是连接数据库慢,而是网站第一次打开慢.
你可以用第三方数据库客户端工具,或者自己做个小winform程序来测试到底慢在哪里

#5


或者网站第一次访问之后,重启IIS,再访问,看是否慢

#6


我记得有工具可以测试每个步骤到底耗费多少时间的,可以测试一下
如果你的网站要在第一次登陆跳转到主页的时候加载dll,初始化一大堆实体类,那么慢也是可以理解的了

#7


我用的就是winform,代码也很简单,就是字符串连接数据库的几行语句

#8


那你先看看服务里数据库服务的状态吧
是否第一次访问的时候服务才动态启动

#9


代码就是数据库连接最简单的那几句,还在宿舍电脑上

#10


第一次连接的时候因为要去创建物理连接(复杂的握手,认证过程),所以慢。

#11


不应该问为什么第一次慢,应该问为什么后面的快。

答案是有优化的结果。快不是自然而然的。

#12


你是否使用trusted连接。这个是很慢的。特别第一次。最好用数据库用户连接。

#13


大家的数据库连接一般需要多久?

#14


我窗体上显示系统时间,连接过程时间会卡主几秒,连接之后显示的会跳过这几秒时间,大家的连接过程好像很流畅,怎么实现的?一般情况下数据库的连接要多久?