VII.4.2. Memory and Processor Settings

Database-driven applications have the potential to be extremely memory intensive. Sophisticated relational database management systems, such as SQL Server, offer caching algorithms that are highly efficient at leveraging available memory to reduce the need for disk interaction. Because disk interaction is roughly ten times slower than memory, anything you can do to reduce the amount of communication with the disk will have a dramatic performance benefit.

One of the easiest things you can do to address a memory problem is ... buy more memory! With memory prices at an all-time low, it might be less of a hassle to stuff the server with more RAM than to wrack your brain trying to coax a bit more performance from your applications or database engine. However, by default 32-bit operating systems can only address roughly 3.2GB of memory, so anything above that is wasted. An exception to this rule is that Windows Server 2003 and 2008 will address more than 3GB of RAM if you employ the /3GB switch in the boot configuration. Windows Server 2003 R2 can address up to 32GB of RAM, all of which can be leveraged by SQL Server provided the boot switches have been properly configured. Comparatively, a 64-bit operating system can address much more memory without any special settings.

VII.4.2.1. Determining if there's a problem

Before you try to fix a memory ...

Get Microsoft® SQL Server™ 2008 All-In-One Desk Reference For Dummies® now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.