I need to move my transaction logs to another drive because they keep filling up the partition they're on now. What's the best way to do this?

Paul Robichaux

May 6, 2001

3 Min Read
ITPro Today logo in a gray background | ITPro Today

A. You've hit on the only real drawback of Exchange Server's transaction-oriented architecture. Because each change to the Information Store (IS) databases generates a transaction in the transaction log files, anything that makes lots of changes to your IS (such as a mail loop or moving lots of mailboxes) makes your log files balloon in size. If you don't have enough space on the drive where the log files are stored, the IS shuts down, logging a message in the event log at the same time. When this happens, you have a problem: You shouldn't delete the log files manually, but if you don't do something to make more space available, you won't be able to restart the IS.

How can you prevent this problem? If you do regular online backups, you should find that the backup process automatically removes the log files for you. If you’re backing up but the log files aren't disappearing, you aren’t getting good backups. Check your event logs for errors.

You can take one of three actions to fix a space squeeze once it starts happening: 1) Delete unnecessary files on the log drive. Be very careful if you choose this route. Don't delete any of the log files themselves! If you’ve followed the recommendation to put your log files on their own physical disk, this approach won’t help you because you don’t have any unnecessary files. 2) If you need to move the log files to another drive, use the Performance Optimizer to move them. This is the only safe way to move log files. Don't move log files yourself, and don't edit the registry subkey that shows where the files are. The IS databases contain references to the log file paths, so if you move things manually, you're heading for trouble. 3) Create a volume set to temporarily extend the log drive's partition. This is a neat trick that I first learned from Andy Webb.

To create a volume set, you first need to install an extra physical disk in your server (your IS is stopped anyway, so that shouldn't be a problem). Add the disk, then use Windows NT's Disk Administrator:

  1. Launch Disk Administrator. Partition the new disk if you need to, but don't format it. Note that you can build volume sets only on NTFS volumes, so you must convert your log drive from FAT.

  2. Select both the current log drive and the new drive (click one, then hold down the Ctrl key and click the other one). This action tells Disk Administrator that you want to do something to both drives.

  3. Select Extend Volume Set from the Partition menu, and tell Disk Administrator how much of the new drive’s space to tack onto the end of the existing log drive volume.

  4. Now that you have some additional space, you can restart Exchange Server. As soon as it comes back up, do an online backup to remove the log files. While the backup is proceeding, determine why the logs are growing so fast. If a mail loop is responsible, fix it or you'll end up with the same problem again. After the online backup is completed, shut down the IS and Directory Service (DS) and do a full offline backup for safety's sake.

  5. Go back to Disk Administrator, and break up the volume set. If the new drive you installed is larger than the old one, you can use Performance Optimizer to move the log files to the new drive.

Sign up for the ITPro Today newsletter
Stay on top of the IT universe with commentary, news analysis, how-to's, and tips delivered to your inbox daily.

You May Also Like