16

Considering that Microsoft SQL Server is not, technically, a slow database management system, I keep wondering why it often/usually takes such a long time for SQL Management Studio to connect.

This happens even when nobody else is accessing the database server and when Management Studio runs on the same machine as SQL Server.

Plus SQL Management Studio often takes a very long time to do something, even just displaying a login's permissions can take several minutes on database servers otherwise unused.

Is there some obvious explanation?

  • 1
    How long is "so long"? 2 seconds, 20 seconds or 200 seconds? – Bevan Jul 24 '09 at 1:15
  • Do you have any odd plugins? Every server I try to connect to takes under 2 seconds on my work network. – Bob King Aug 4 '09 at 20:38
  • @Bevan for me, minutes to connect to localhost... it's truly frustrating. (YMMV) And it started at some recent point in time, it was never like this before. – ANeves Nov 6 '12 at 19:13
  • @Bevan, for me it takes 50 seconds to start. When I click the icon until something shows up it is 50 seconds which in my opinion is way too much time. – FabianVal Sep 18 '18 at 15:02

13 Answers 13

13

This sounds stupid but I had a problem of a very slow SQL Server Management Studio and this trick solved it:

  • Open Internet Explorer
  • Go to Tools -> Internet option
  • Open the "Advanced" tab
  • Uncheck "Check for server certificate revocation (requires restart)"

This trick is only effective if the computer where your SQL Server Management Studio is installed is NOT connected to Internet. Only doing that solved my problem. Maybe it will solve yours.

  • Oddly enough this seems to improve things a bit. But the 32/64 bit issue mentioned below could also be right. I'll accept this answer and upvote the other. – Andrew J. Brehm Aug 25 '09 at 14:22
  • 4
    I'm not a security expert, but this page virtualobjectives.com.au/sqlserver/ssms_slow.htm (which is represented in another answer here and worked well for me) notes that disabling security cert checking is not advised. I would think that taking this approach opens you up to a nice big security risk :O – jinglesthula Jan 31 '14 at 16:52
  • In my case, the server wasn't connected to the Internet so it couldn't perform any security check, so it didn't change much, except after that I didn't have to wait for the timeout :). But I agree this is not a good idea on a server that can perform this check. – Julien N Feb 3 '14 at 17:29
14

This worked for me: Microsoft SQL Server Management Studio is too Slow

In a corporate environment it is not uncommon for Microsoft SQL Server Management Studio (SSMS) for SQL Server 2005 to take over 45 seconds to start as well as lags and delays when opening various windows and dialog boxes from within the application. If you are experiencing this issue, then a quick fix is to add an entry in your HOSTS. file that points crl.microsoft.com to 127.0.0.1

  • Exit SSMS
  • Press the keys [Win] + [R]
  • Enter the following..

    notepad %systemroot%\system32\drivers\etc\hosts.
    
  • Append the following..

    127.0.0.1    crl.microsoft.com
    
  • Save the file.

  • Start SSMS (ah! much better)
  • My god, it's bizzare... – Alex Zhukovskiy Jul 4 '16 at 15:44
  • 1
    Since crl stands for "Certificate Revocation List", this is also non-ideal from a security point of view (see the comments on the accepted answer). – Heinzi Jun 26 '17 at 10:00
  • For me this seems to have taken the delay from 30++ seconds down to < 5 seconds, but still slow. – tbone Aug 27 '17 at 18:14
3

by default, when connecting to a local server, the network protocol used is shared memory. This can be quite slow sometimes.

I was experiencing the same speed issue when connecting to a similiarly specced box locally, but not remotely.

Do you get the same slowdown if you specify the TCP/IP network protocol when connecting?

EDIT Also, according to Microsoft, this may be an issue caused by Management Studio being 32bit and being run on a 64bit OS. See here: http://support.microsoft.com/kb/906892

  • 1
    So Microsoft recommends running it on a 32-bit OS. Not exactly a practical suggestion. rolling my eyes – mhenry1384 Mar 28 '18 at 14:03
3

Possible broken IPv6 implementation? Are you running dual-stack? We are and have had this problem before. IPv6 is tried first, and if there's any configuration errors it'll eventually fail to IPv4.

3

SSMS is attempting to check with Microsoft for the default root certificate, even though it does not us it. If you are using a proxy server use either proxycfg or netsh to set the system proxy settings. Close and then open SSMS and the time to load will be greatly reduced.

2

Adding to Julien N 's answer above, I fixed the problem (a 10-second delay when running a query the first time) by un-ticking:

"Check for Publisher's certificate revocation"

in Internet Explorer advanced options. No restart required.

1

My colleague has the exact behavior as you on his PC. He was using SQL Server Management Studio of 2005. He solved installing the new version that comes with SQL Server 2008.

If you notice that this problem happen only on your PC I suggest you to try uninstall and re-install the whole Microsoft SQL Server suite.

  • 1
    This happens to me with both SQL Server 2005 and 2008. – Andrew J. Brehm Jul 20 '09 at 13:21
  • ...and all the way up to SSMS 2017. – rory.ap Apr 26 at 12:56
1

Could this be a Name Resolution problem? If the SQL Server engine is on the same machine, try using (local) as the name or even 127.0.0.1 (or the IP address of the machine). Netbios over TCP/IP and/or deficient WINS/DNS can lead to slow connecting times.

Also make sure that the server has enough memory to operate. SQL Server can work well under 512 MB ram, but the performance degrades very fast.

There shouldn't be a delay longer than 5 secs when connecting to a server. (Less if local).

  • No. It connects to ".". The servers in question are 64 bit and have 8 GB and more. – Andrew J. Brehm Jul 27 '09 at 8:43
1

I added sqlservr.exe to the exception list of the windows firewall on SQL server 2005. Result: very quick respons!

1

In my case it was not every time, but when it did, it would take 10 min to get back even my connection box. So I looked at Configuration manager and disabled shared memory. Works like charm every time !!

  • 1
    A little more detail such as which version, navigation from the app to this setting, etc. would be helpful. – Pimp Juice IT Aug 16 '16 at 0:38
  • This worked for me. To do this run the SQL Server Configuration Manager and disable "Shared Memory" under Network Configuration / Protocols – Mike Jerred Dec 5 '17 at 10:45
1

The solution for me was to disable the Hyper-V NIC:

enter image description here

Simply right-click and then click disable

0

I was having kind of same problem where Views folder was taking long time to expand. Other folders including databases or tables were OK. All of the recommendations above didn't work in my case. What worked for me is the user had sysdamin role, I removed the sysadmin role and give it back and everything start working fine for me.

-2

If you're using SQL Express, check that the total size of your databases does not exceed 10 GB (limitation for SQL Express 2012).

  • 2
    If the size exceeds the limitation, would the result be just slow performance? – fixer1234 Nov 12 '15 at 17:10

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.