- Hardware that does not meet your input/output (I/O) and memory needs.
- Improperly configured and tested settings.
- Inefficient design.
- Hardware problems.
- Compressed drives.
- Non-default SQL Server configuration settings.
- Inefficient queries and/or inefficient index design.
- Frequent database AutoGrow or AutoShrink operations.
- Determine if you have any hardware bottlenecks. The "Identifying Bottlenecks" topic in SQL Server 2000 Books Online is a good place to start. If necessary, upgrade your hardware so that it is adequate to service the needs of your environment's configuration, queries, and load.
- Verify that all your hardware functions properly. Check for any logged errors and run any diagnostics provided by your hardware vendor.
- Make sure that your disk drives are not compressed. Storing data or log files on compressed drives is not supported as documented in the "Physical Database Files and Filegroups" topic in SQL Server 2000 Books Online. For additional information on compressed drive support, click the article number below to view the article in the Microsoft Knowledge Base:231347 INF: SQL Server Databases Not Supported on Compressed Volumes
- See if the error messages disappear when you turn off all these options:
- The SQL Server priority boost configuration option.
- The lightweight pooling (fiber mode) option.
- The set working set size option.
The preceding settings can often be counter-productive if you change them from their default setting of OFF. For more information about the settings, refer to the "Setting Configuration Options" and "sp_dboption" topics in SQL Server 2000 Books Online.For additional information, click the article number below to view the article in the Microsoft Knowledge Base:319942 HOW TO: Determine Proper SQL Server Configuration Settings
- Tune queries to reduce resources used on the system. Performance tuning will help reduce the stress on a system as well as improve response time for individual queries. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:224587 HOW TO: Troubleshoot Application Performance with SQL Server
- Set the AutoShrink property to OFF to reduce the overhead of changes to your database size.
- Make sure you set the AutoGrow property to increments that are large enough to be infrequent. Schedule a job to check the available space in your databases, and then increase the database size during non-peak hours.
- If the 844 or 845 error messages are infrequent, then you can ignore the errors as stated in SQL Server 2000 Books Online.
For information on how to monitor your system and on how to implement some of the changes suggested in the "Workaround" section of this article, see the following topics in SQL Server Books Online:
"Viewing Error Logs"
"Optimizing Database Performance Overview"
"Designing an Index"
"Index Tuning Wizard"