• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 524
  • Last Modified:

MS SQL Server - running slow

Hi All,

I was wondering if anyone knows how to speed up a database in MS SQL? - if at all possible?
Is there a way to optimise/index a current db so that queries will run faster?

Slightly new to advanced MS SQL Administration - so any help would be really usefull :-)

4 Solutions
set up a trace using the sql profiler and then have the database tuning advisor analyse the trace and make recommendation son which indexes and statsistic need updating
check ou tthe following guide with a basic example for how to use the advisor

With all due respect the Database tuning Advisor doesn't work against temporary tables so if you use them then it won't be of much help....

If you have the server up with awhile i.e. you haven't restarted it recently you could look at using the Index DMV's to identify any missing index's that could be applied ...check out the following as a starter


You should become familar with the DMV's on query stats aswell personally i think thier a very usful tool to have in your belt.....

Monitor CPU usage ..... Deadlocks....resource contention...I/O etc see where your getting hit. Then you can ask more specfic questions. Sometimes its hardware and not the database design thats the problem
The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

On a side if you have alot of Dynamic SQL you should consider turning on 'Forced Parameterization'
With a ll due respect user states that they are new to sql server administration and therefore start at the beginning, if they are new to teh system then getting complicated by going into temp tables etc is going to get confusing very fast, the tuning advisor is built in, easy to use and gives good insight into how indexes and statstics can increase speed of your db before goinmg into looking at bottlenecks, IO activity, query execution plans etc.
chouckhamAuthor Commented:
Thank you guys!

I appreciate all of your posts! :-)

I will attempt the basics first as outlined.. then move onto the next steps -  i had already considered the hardware to be a problem - i.e. RAID 5 set up etc.. (which isnt ideal) increase in RAM (as this is also fully used) and CPU usage seems to be extremly high whilst running a custom SQL query.

I will let you know the outcome and then we can try other things.

for the queries running high overheads check teh query execution plan an option within the management studio and where searches occur see ifthere are any full table scans as these create high overheads by scanning complete tables instead of indexes
Fair enough i'm just pointing out that if you use temp tables the tuning advisor will not be of any use thats all...i didn't intend to sound like an ass, sorry if i did.
wasnt meant to cause offence mate!! your comment def holds credence and good information just taking into account users level of expertise affects where you pitch yoru repsonse sometimes ;o) Always good having extra mins on a problem though ;o)
Guy Hengel [angelIII / a3]Billing EngineerCommented:
first, you have to check the (sql) server configuration:
* RAM vs Max Memory setting
* CPU => parallel query execution
* Database Recovery mode vs backup (log) strategy
* Disk layout vs database file locations

next, per database you can optimize by using
* filegroups
* indexes

do you need details (apart from what you can google around :) ) ?
Mark WillsTopic AdvisorCommented:
There is a good word document to download from Microsoft - it shows the different problem areas and things to look out for, have attached it for you...

You will need to collect some empirical measurements, and you can gather these from both MS SQL and from runing performance monitor. For fine tuning looking at queries thats when you start using detailed tools such as Database Tuning Advisor and so forth.

You do need to take into account which versions you have (both sql server and windows), there are a few differences as to how much memory etc... And where you have your databases, Wndows Virtual Memory, temp files etc...

let us know if you want more specific pointers... Bare in mind that it is potentially a big area to contemplate...

You can also look at "Monitoring and Tuning for Performance" topic in SQL Server 2005 Books Online

There are a series of fairly easy to read "intro" documents from Brad McGeHee example : http://www.sql-server-performance.com/tips/performance_monitor_cpu_counter_p1.aspx  - there are a few good articles there, and on technet...


Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now