Upgrade Guide for Movable Type
This is the upgrade guide for Movable Type.
Upgrade is similar to installation, except that backups of all data should created, database and config files don't have to be created from scratch, and custom plugns will need to be re-installed.
Here's the basic process:
- Backup - The most important part of upgrading
- Install New Version
- Configure New Version
- Upgrade Database
- Install Plugins - critical if publishing requires plugins, otherwise optional.
- Refresh templates after upgrading to MT5.13, 5.07, or 4.38
This guide assumes that you have FTP, shell, or some other form of access to the server.
Throughout this guide two terms are commonly used:
$MT_HOMEis used to refer to the application directory
$MT_STATICis used to refer to the static directory
This is generally not a problem, but there are some specific changes to make if upgrading from versions older than MT3.31. Read the recommended upgrade path from older versions of movable type.
Some plugins come bundled with Movable Type. But there are many plugins available from third-party developers which extend the functionality of MT. All plugins bundled with the old version of Movable Type will either be bundled or merged into the new version.
Many plugins will work with different versions of Movable Type, but check with each plugin's documentation to determine if there are any updates or compatibility issues.
If particular plugins are critical to publishing blogs/websites managed by the Movable Type installation and the plugin author hasn't made any notes about compatibility with the new version of Movable Type, contact the plugin developer or install a fresh copy of the new version of Movable Type, install the plugins, and test.
Find a link to the plugin's web page by going to the System Overview > Manage Plugins screen and selecting the name of the plugin to reveal the details of the plugin.
The Per Modules section of the System Requirements page lists which are required. After installing the new MT application files on the server the
mt-check.cgi script can be used to test if necessary Perl Modules are installed. (This step is listed after Configure New Version below.)
When upgrading, the same database is typically with the new version. After upgrading to the new version of MT, you'll access MT and an upgrade script will update database to the latest schema.
As Movable Type has developed support for less popular databases has been dropped. Movable Type 5 currently only offers support for MySQL. View system requirements for more info.
If you are using SQLite or PostgreSQL learn how to migrate your SQLite or PostgreSQL database to MySQL.
Warning: Because Movable Type 5 does not support SQLite or PostgreSQL, convert to MySQL before upgrading to Movable Type 5.
Two upgrade strategies when it comes to database:
- backup the current database, and proceed with the current database.
- populate a new database with the backup of the existing database.
Tip: The benefit of the second option is that the existing database and MT application can be left in parallel with the new install and new database which makes reverting easy if necessary.
The database credentials can be found in the
If using a new database (assuming it's a MySQL database) have the following three items ready:
- database name
- database user
- database user password
Warning: This is the most important part of upgrading.
Backups should be created on a regular basis regardless of whether performing an upgrade or installing plugins that effect the database. Should data be lost due to any reason, a recently-created full backup will make it easy to revert to a previous state. Determine how many hours or days of work you can afford to lose, this amount of time should be your backup interval.
Note: Optionally, use the Backup and Restore functionality in MT to move data between installations of MT. This is optional because because backing up the database and directories as described below covers is a more comprehensive backup strategy.
See the File System page for more info about these directories.
- application directory
- blog and website directories - If Movable Type is publishing multiple blogs or websites, backup the root directory containing all the files being published.
- themes directory - New in MT5
Duplicate the directories to backup (via FTP program or command line) on the server or download a backup.
Tip: If possible create a compressed archive of on the server first (zip, tar.gz, etc.). Via command line, use the zip command to recursively compress all the files and directories in a sub-directory of the current directory into a zip archive:
zip -r sub-directory-name.zip sub-directory-name
If not using MySQL refer to migrating to MySQL from SQLite or PostgreSQL.
Now that all the data is backed up we're ready to install the new version of Movable Type.
Because installation of the new version during upgrade is essentially the same as during initial installation, please refer to the Install New Version section of the Detailed Step-by-Step Installation Guide. (Simpler installation guides are also available: Install via FTP or Install via SSH.)
Because this will be the second (or more) version of Movable Type being installed, there a couple strategies for installation location:
If installing the new version of MT into the current directory, delete all the files from the exising application directory and upload the files from new version to this folder.
Warning: If upgrading to Movable Type 5 from a previous version of MT, the method of copying the new files over the existing files recursively is not recommended. Start with a fresh install of the application directory, then install any plugins, and make any desired modifications the the application files.
If multiple application directories are installed:
cgi-bin/ MT-4.32-en MT-5.0-en
They can each be accessed separately:
Installing these directories side-by-side allows for easily switching back or referring to a previously installed version of MT if necessary.
Tip: a symlink can be created to point "mt" to the current application directory in the
cgi-binso that Movable Type can be accessed without the version number in the URL:.
$ ln -s MT-5.0-en mt
Read more about Symlinking to the Application Directory
Confirm that file permissions have been set correctly.
Copy the contents of the old
$MT_HOME/mt-static/support directory into the new
If permissions have changed since these files were backed up ensure that file permissions are set correctly.
If upgrading from MT5+ and custom themes are in the old installation's
$MT_HOME/themes directory, copy them to the new themes directory.
If using a new database, change the database config directives to access the new database.
Note: Optionally, confirm proper installation that MT is installed properly by accessing the
mt-check.cgiscript. Should be a url similar to this:
The message "Movable Type System Check Successful" will appear at the bottom of the screen if the server has all the necessary libraries/modules for installing Movable Type.
If the system check fails to complete, then the missing Perl libraries/modules must be installed before continuing.
At this point all the files for the MT application have been installed and configured.
Logging into the new Movable Type version will trigger the upgrade script. If the database schema has changed between the old and new versions, this script will move data around in the database to match the new schema.
Login to the Movable Type install:
If there is an error, double-check that the steps above have been completed.
Note: The database upgrade process may not run to completion on sites that have extremely large databases. For tips about how to manage that problem, see the next section.
Movable Type will make a lot of changes to your database schema to introduce performance enhancements and support for new features. For really large databases, say for databases with several hundred thousand comments for example, this process may take several minutes. Therefore users that feel that they have large database are encouraged to run the command-line upgrade tool.
To execute this tool, run the following commands from the command line while your working directory is the application directory:
Third-party plugins critical to the functionality of blogs/websites published by this installation of Movable Type should be installed before the new version is used to publish otherwise there may be errors.
- Once necessary third-party plugins have been installed, publish each blog and website to test for any errors.
Japanese URL: http://www.movabletype.jp/documentation/mt5/upgrade/index.html