views:

1400

answers:

5

I'm running Sql Server Management Studio 2008 on a decent machine. Even if it is the only thing open with no other connections to the database, anything that has to do with the Database Diagram or simple schema changes in a designer take up to 10 minutes to complete and SQL Management Studio is unresponsive during that time. The same SQL code takes less than a second. This entirely defeats the purpose of the designers and diagramers.

------------------
System Information
------------------
   Operating System: Windows Vista™ Ultimate (6.0, Build 6001) Service Pack 1 (6001.vistasp1_gdr.080917-1612)
          Processor: Intel(R) Core(TM)2 Quad CPU    Q6700  @ 2.66GHz (4 CPUs), ~2.7GHz
             Memory: 6142MB RAM

Please tell me this isn't a WOW64 problem; if it is, I love MS, but step up your 64-bit support in development tools.

Is there anything I can do to get the performance anywhere near acceptable?

Edit: I've got version 10.0.1600.22 of SQL Server Management Studio installed. Is this not the latest release? I'm sure I installed it from an MSDN CD and I pretty much rely on Windows Update these days. Is there any place I can quickly see what the latest release version number is for tools like this?

Edit: Every time I go to open a database diagram I get the message "This database does not have one or more of the support objects required to use database diagramming. Do you wish to create them?" I say yes every time. Is this part of the problem? Also, if I press the copy icon, I get the message "Current thread must be set to single thread apartment (STA) mode before OLE calls can be made." Database corruption?

+1  A: 

I'm running in a similar environment and not having that problem.

As with any performance problem, you'll have to analyze it a bit - just saying "it takes 10 minutes" give no information on the reason it takes so long, so no information you can use to solve the problem.


Here are some tools to play around with. I'd have mentioned them originally, but "play around" is all I've learned to do with them. I'd recommend you try learning a little about them, which I have not done. http://technet.microsoft.com is a good source on performance issues.

Start with Task Manager, believe it or not. It's been enhanced in Vista and Server 2008, and now has a better Performance tab, and a Services tab. Be sure to click "Show processes from all users", or you'll miss nasty things done by services.

The bottom of the Performance tab has a "Resource Monitor" button. Click it, watch it, learn what it can do for you.

The Resource Monitor is actually part of a larger "Reliability and Performance Monitor" tool in Administrative Tools. Try it. It even includes the new version of perfmon, which will be more useful when you have a better idea what counters to look at.

I will also suggest the Process Explorer and Process Monitor tools from Sysinternals. See http://technet.microsoft.com/en-us/sysinternals/default.aspx.

John Saunders
I don't know what other information I can provide. It is the only thing running, all other open panes in the studio are closed, open a diagram with only 10 tables on it, perform a few edits, and the screen dims after the next click and does't respond for minutes. No other connetions to the db
divitiae
I am running the management studio and the database locally.
divitiae
I would love to know what other information I should be asking myself to obtain to solve this problem, which is the reason I posted this question.
divitiae
Task manager shows now CPU activity on any of the sql threads or services while it is in the "Not Responding" phase.
divitiae
+1  A: 

Do your simple schema changes possibly mean that you're reordering the columns of a table?

In that case, what SQL Management Studio does behind the scenes is create a new table, move all the data from the old table to the newly created table, and then drop the old table.

Thus, if you reorder columns on a table with lots of data, lots of indices or both, you CAN incur a massive amount of "reorganization" work without really realizing it.

Marc

marc_s
No data in any of the tables yet. Mostly editing of foreign keys.
divitiae
Even appending columns on completely empty tables cause SQL Server show up as "not responding" for minutes at a time until suddenly it completes its simple operation.
divitiae
A: 

Hi,

When you open SSMS it attempts to validate itself with Microsoft. You can speed this process by performing the second of the recommendations at the following link.

http://www.sql-server-performance.com/faq/sql_server_management_studio_load_time_p1.aspx

Also, are you using the registered servers feature? If so SSMS will attempt to validate all of these.

John Sansom
Thanks for the link to the tips, did all of the suggestions. Its not the load time that is a problem though it loads quite fast, its the "Save" time in designer windows. It still takes ~9 minutes to save a diagram with one field change to one table. I am not using the registered servers feature.
divitiae
+1  A: 

Can you try connecting your SQL Management Studio to a different instance of SQL Server or, better, an instance on a remote machine (and try to make similar changes)?

Are there any entries in the System or Application Event Logs (or SQL logs for that matter)? Have you tried uninstalling and reinstalling SQL Server on your machine? What version of SQL Server (database) are you running?

Lastly, can you open the Activity Monitor successfully? Right click on the server (machine name) - top of the three in the object explorer window - and click on 'Activity Monitor'.

Do you have problems with other software on your machine or only with SQL Server & Management Studio?

RobS
Thank you Rob, your answer was instrumental in diagnosing what was happening.
divitiae
A: 

It seems as though it was a network configuration problem. Never trust a developer (myself) to setup a haphazard domain at his office.

I had my DNS server on my computer pointed to my ISP's (default because the wireless router we're using provided by the ISP doesn't allow me to override the DNS server to my own) instead of my DNS server here, so I have to remember to configure it manually on each computer, which I forgot for this particular computer.

I only discovered it when I tried to connect for the first time to a remote SQL Server instance form this PC. It was trying to resolve to an actual sub-domain of mycompany.com instead of my DNS server's authority of COMPUTERNAME.corp.mycompany.com

I can't say why this was an issue for the designers in SQL Server but not anything else, but my only hypothesis is that when I established a connection to my own computer locally using the computer name instead of "." or "localhost", SQL queries executed immediately, knowing it was local, but the designers still waited for a timeout from the external IP address before trying the local one.

Whatever the explanation is, changing my DNS server for my network card on the local machine to my DNS server's IP made it all work very quickly.

divitiae