[RadiusNT] Tips for the weary crashing server

Jeff Woods ( jwoods@deltacomm.com )
Mon, 18 Oct 1999 12:27:42 -0400

My RadiusNT 2.5 / SQL 6.5 server had gotten VERY flaky lately. Blue
screen exceptions, multiple daily spontaneous reboots, freezes, and
more. Very ugly.

Just in case you've never done this, folks, do this.

Get a disk defragmenter and run it on your SQL drive while SQL and RadiusNT
are completely shut down.

My SQL database file was so severely fragmented that it was GPF'ing NT
itself, with blue screens 0x0000001e and 0x0000000A. When I shut down and
ran Diskeeper on the MSSQL/DATA drive, it said there were 111 (yes, one
hundred eleven) fragments *PER FILE*, on average. There are 809 files on
the drive, and the only thing installed here is MSSQL, RadiusNT/Emerald,
and pcANYWHERE. I would find it hard to believe that, with 4 GIGS free on
the drive, that when I installed MSSQL or the other apps, that the system
files, the DLL's and such, were fragmented, and since they are mostly
DLL's, system files, and such that get read but not written, the
fragmentation had to be mostly in my data.

I estimate that the MSSQL database itself was in approximately 55,000
fragments, making the master file table an absolute MESS. It was so
severly stressing the NTFS system to be handling a file with that many
fragments, that it was crashing. (I found tech notes on MSKB to support
this theory).

I ran Diskeeper, defragmented my hard drive, and the problems cleared up at
ONCE. Thus far, no more reboots or lockups.

I had not been running Diskeeper on my SQL server's data partition because
I assumed that since SQL had created the database device of the appropriate
size, and then allowed the database to expand within it, that fragmentation
would not occur -- the entire device had been created at once, and SQL
handled the internal allocation of space within the device.

Boy was THAT a wrong assumption. Your SQL database devices can and do get
fragmented. Heavily.

If you are not regularly defragmenting your drives on your busiest
machines, or machines that keep LOG FILES (mail servers, web servers, ftp
servers, and now SQL servers), you're killing your performance, especially
on things like mail servers that have extensive logs that are opened,
written to, and then closed for every transaction. These log files get
quite fragmented, and now I know it happens to the SQL data file, as well.

Invest in a defragmenter. You won't be sorry.

For more information about this list (including removal) go to: