Changing SMTP Database Location in Exchange Server 2007

exchange 2007, hub transport

In Exchange 2007, the only two servers that understand the actual SMTP protocol are the Hub Transport and Edge Transport Servers. The Edge Transport are used as messaging hygiene servers located on your company’s DMZ, and Hub Transport servers are used internally to route email between sites, and to local Mailbox servers.

Exchange 2007 no longer uses the Windows Server SMTP service to handle SMTP traffic. As a matter of fact, you have to make sure this service is not installed before you install either the HT or ET roles! Exchange 2007 uses a new SMTP stack, and also uses a new SMTP database system. It now uses a Extensible Storage Engine (ESE, formally JET) database to store and track the SMTP database. For best performance, specifically on a busy Transport server, you want to move the default location of these files. Just like with a standard ESE database, you preferably want to move the DB to one array or disk, and the log files to another array or disk.

To change the location, you need to edit the edgetransport.exe.config file, located in C:Program FilesMicrosoftExchange ServerBin. The location is the same for both roles. This file holds the defaults for many of the various options of the Transport services, but for now we will focus on the SMTP database and logs option.

Find the following keys:

add key=”QueueDatabasePath” value = “C:Program FilesMicrosoftExchange ServerTransportRolesdataQueue”

add key=”QueueDatabaseLoggingPath” value = “C:Program FilesMicrosoftExchange ServerTransportRolesdataQueue”

As you can see the default location for both is C:Program FilesMicrosoftExchange ServerTransportRolesdataQueue. Let’s change this. We want our Database to go to D:SMTP DB and our logs to go to D:SMTP Logs. You should edit the keys so that now they look like this:

add key=”QueueDatabasePath” value = “D:SMTP DB”

add key=”QueueDatabaseLoggingPath” value = “D:SMTP Logs”

Save the file, and restart the Microsoft Exchange Transport Service for the changes to take effect. There will be a longer than normal delay as it moves the files to the new paths. Now check the D:SMTP DB location, you will see the following files:

  1. Mail.que – this is the ESE database
  2. trn.chk – this is the checkpoint file used by the database to determine its position in relations to the transaction log files

In D:SMTP Logs you will find the following:

  1. Tmp.edb – the temporary EDB file
  2. trn.log – the transaction log (always 5 MB)
  3. trnres00001.jrs and trnres00002.jrs – these are reservation files just like Exchange uses to ensure that the Transport service can write its transactions to disk in case the disk fills up. Note these are always 5 MB each
  4. trntmp.log – the temporary transaction log file

This allows us to move our Transport database and logs off of the system file, for better performance, specifically on a busy Transport server.