Upgrading an HMS Installation

SYSTEM REQUIREMENTS

The Hurricane MTA Server (HMS), starting with version 2.0, requires
one or more pre-installation actions before either performing a new
installation or when upgrading from a 1.x installation. These
requirements vary based on the version of Windows Server being used,
so please see our _HMS System Requirements KB Article
[https://support.socketlabs.com/index.php/Knowledgebase/Article/View/115/] _for
more information. Please ensure that you have met all prerequisites
for a new HMS version before performing the upgrade.

HMS INSTALLERS

The installers for the MTA referenced in this document can be found at
the following locations, based on the major version:

 * Version 1.x - http://download.socketlabs.com/hms/setup.exe

[http://download.socketlabs.com/hms/setup.exe]

 * Version 2.x - http://download.socketlabs.com/hms/2/setup.exe

[http://download.socketlabs.com/hms/2/setup.exe]
[http://download.socketlabs.com/hms/2/setup.exe]

* Version 3.x - http://download.socketlabs.com/hms/3/setup.exe

[http://download.socketlabs.com/hms/3/setup.exe]
[http://download.socketlabs.com/hms/3/setup.exe]

 * For upgrading to Hurricane MTA 3.X+ please see our specific

upgrade guide here: https://support.socketlabs.com/kb/163/
[https://support.socketlabs.com/kb/163/]

UPGRADE PROCESS

Before proceeding, if you are upgrading from an HMS version prior to
1.0.0.846 on a 64-bit system, please also read the 32-bit to 64-bit
Upgrade
section below.

Upgrades can be performed in one of two ways:

 * Download the latest installer from our website, from the

appropriate location specified in the HMS Installers section of this
document. When running an installer, please save it to the local
system before execution instead of running it directly from the
download in the browser.

 * If the currently-installed version is 2.0 or greater, there is an

Update or Uninstall shortcut under the Hurricane MTA Server start
menu group.

All settings are preserved during an MTA installation, even when
upgrading from 1.x to 2.x or 2.x to 3.x. We strongly recommend backing
up your HMS installation before running any upgrade. This can be done
by simply zipping up the HMS installation directory, which should be
named Hurricane MTA Server. Backups should only be created while the
HMS services are all offline. Once a backup is made, running the
installer upgrades the MTA in place. Please note that it is not
possible to have multiple HMS installations on a single system.

WEB.CONFIG SETTINGS

It is important to note that as of MTA versions 2.1 and above, we
preserve all web.config files in the MTA's service directories such as
"www". We also install the latest web.config generated by our services
and place it in those folders with "new" prepended to the file name.
This allows existing web.config settings to be preserved during an
upgrade or reinstallation, while still providing a newer version of
those settings. You may wish to or need to integrate settings from the
new web.config with the existing version. If errors related to
web.config settings are encountered the first time the Control Panel
or another web service is brought online after an upgrade, the
web.config settings are a likely culprit and should be investigated
before checking for other issues.

32-BIT TO 64-BIT UPGRADE

In the special case of upgrading a 32-bit HMS installation to a 64-bit
installation, additional concerns should be addressed. This process
only applies to versions of the MTA prior to 1.0.0.846 installed on
64-bit systems. When upgrading the MTA in this scenario, the
installation process will force the MTA installation to become 64-bit.
The following should also be noted:

 * Create a backup of your current HMS installation prior to

upgrading.

 * Before upgrading, ensure that any MTA plugins in use by the MTA

are 64-bit compatible or else they could fail post-upgrade.

 * It is not recommended or supported to downgrade to a 32-bit

installation after the 64-bit upgrade has completed. Please consider
such an operation irreversible and plan appropriately.

 * A 32-bit MTA installation will have installed into the _Program

Files (x86)_ folder by default. An upgrade from 32-bit to 64-bit will
not change this.

 * During the upgrade process, the embedded database _master.fdb_ is

also upgraded. This process requires the data to be duplicated, and
the original database is left in place. You will want to ensure that a
system has enough disk space prior to an upgrade, and the original
database can be archived and deleted manually once the upgrade is
complete.

 * When upgrading, the size of the _master.fdb_ embedded database can

significantly affect how long the upgrade process takes. Please be
patient if you have a large database and do not cancel the upgrade
prematurely.

RESTORING A PREVIOUS VERSION

In the case of a faulty or unwanted upgrade, it is possible to revert
to a previous version.

In the case of reverting from a 2.x installation to a 1.x
installation, the safest method is to re-run the 1.x HMS installer,
which will preserve the settings and data but replace the MTA with the
1.x version. Be warned that running the 1.x installer could
potentially install a newer version of 1.x than existed before the
original 1.x to 2.x upgrade. If this is the case, you will need to
restore your HMS installation using a self-made backup as described in
the Upgrade Process section above. In this scenario, care should be
taken as backups contain the exact state of messages, queues, and
account settings. This means that if any processing was performed
since the backup was taken, messages could be duplicated or lost and
settings could change.

If you find yourself in a downgrade situation too complex to be
resolved by the procedures described in this document, please submit a
support ticket to http://support.socketlabs.com/
[http://support.socketlabs.com/] and we will assist you with this
process.

ADDITIONAL READING

HMS System Requirements.

https://support.socketlabs.com/index.php/Knowledgebase/Article/View/115/
[https://support.socketlabs.com/index.php/Knowledgebase/Article/View/115/]