?
Solved

MSSQL 2000 performance dropping ('Timeout expired')

Posted on 2006-06-26
14
Medium Priority
?
522 Views
Last Modified: 2012-06-22
Hi.

I have a weird problem with MSSQL 2000. We moved to MSSQL from Sybase. Everything worked fine for about 3 weeks and then it started. The queries took longer and longer to execute until I started to receive 'Timeout expired'. I already reindexed the DB, checked for invalid columns (first I thought that something got mixed up during the conversion), but nothing helped. Then I restarded the entire server and that helped. But the problem returned in about 3 days. I found out, that after restarting the DB service, the problem disapears for 2-3 days, then it returns. I start receiving timeouts (set for 30s) on queries that should take only miliseconds to execute!

Any ideas on this one???
0
Comment
Question by:BlueAlien
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 6
  • 3
  • 3
  • +1
14 Comments
 
LVL 13

Assisted Solution

by:MikeWalsh
MikeWalsh earned 450 total points
ID: 16983473
have you looked for any blocking? SP_WHO2 do you see any processes being blocked? Have you looked at your performance counters like CPU usage/network utilization/IO/Memory/etc
0
 
LVL 143

Expert Comment

by:Guy Hengel [angelIII / a3]
ID: 16983483
2 issues possible:
* the statistics are not up-to-date on the tables/indexes, ie disabled for auto-refreshing
  -> enable auto-update statistics for the database
* the transaction log file of the database has grown huge
  -> either
          => implement regular full and transaction log backups (db in full recovery mode)
          => or change the db into simple recovery mode
  -> and shrink the database log file back to "normal" size
0
 

Author Comment

by:BlueAlien
ID: 16983577
To MikeWalsh:
I don't think anything is blocked, but I'll check. The CPU performance is about 50-60% on 4 CPUs during heavy duty queries. How to check for network utilization?

To angelIII:
The transaction log is shrinked, however I didn't checked the statics. Is it posible to enable the auto update statistic for the entire DB or I must do that for every table?

The thing is, that the program executes i.e. 3000 queries with no problem, than something happens and they get executed 3-4 times slower.
0
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 
LVL 143

Assisted Solution

by:Guy Hengel [angelIII / a3]
Guy Hengel [angelIII / a3] earned 450 total points
ID: 16983606
>Is it posible to enable the auto update statistic for the entire DB
it's basically a db setting, but it can be overridden at table level
0
 

Author Comment

by:BlueAlien
ID: 16983633
I checked those statistics and they are ON (I used the sp_autostats command).
0
 
LVL 28

Accepted Solution

by:
imran_fast earned 600 total points
ID: 16983814
Try Using Sql Profiler to grab all the queries taking long time and then apply them in Index Tuning Wizard to look for index Recommendation.

For Profiler
In Enterprise Manager --> Tools --> Sql Profiler.
0
 

Author Comment

by:BlueAlien
ID: 17000165
I tunned up the queries with the profiler (a very handy tool), but that isn't the problem. Now the app runs faster, but it still slows down after a while.
0
 
LVL 143

Expert Comment

by:Guy Hengel [angelIII / a3]
ID: 17000221
does the sql server max memory setting allow all the memory to be used?
if that is the case, reduce that setting to <PHYSICAL RAM> - 300/400MB (depends on how many other applications run on the server box)
0
 
LVL 28

Expert Comment

by:imran_fast
ID: 17025656
Give the specification of your server. Can You?
0
 

Author Comment

by:BlueAlien
ID: 17026868
It's a:
2x 3.2 Xeon CPU
2GB RAM
2x 30 Ultra320 HDD

and it's only for the DB server
0
 
LVL 28

Expert Comment

by:imran_fast
ID: 17035301
What is the size of you database?
and how many concurrent user using the system.
0
 

Author Comment

by:BlueAlien
ID: 17035320
The DB file has about 1GB, the log file was shrinked. There are about 6-7 concurrent users.
0
 

Author Comment

by:BlueAlien
ID: 17509346
Thanks for your effort.
0

Featured Post

VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Ever needed a SQL 2008 Database replicated/mirrored/log shipped on another server but you can't take the downtime inflicted by initial snapshot or disconnect while T-logs are restored or mirror applied? You can use SQL Server Initialize from Backup…
For both online and offline retail, the cross-channel business is the most recent pattern in the B2C trade space.
Familiarize people with the process of retrieving data from SQL Server using an Access pass-thru query. Microsoft Access is a very powerful client/server development tool. One of the ways that you can retrieve data from a SQL Server is by using a pa…
Via a live example, show how to shrink a transaction log file down to a reasonable size.
Suggested Courses

777 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question