Mini Tutorial: How to Upgrade a Magento site to Enterprise Edition

With Magento discontinuing Professional Edition and all the advantages of having an Enterprise Edition (EE) site, it is common now for many site owners to want to upgrade to Magento EE. Luckily for developers, this is a relatively painless task.

First, you’re going to want to back up your database. I suggest you copy the data into a new database, so you have a separate environment for your enterprise copy. You can do this either using phpmyadmin if you have it, or using shell access to your server (which I prefer since you won’t run into any timeouts or size restrictions).

Once you have your database set up, you will need a fresh copy of Enterprise Edition. You won’t need to install Magento the traditional way so refrain from navigating to the URL for now. This next part can be a pain if the theming was set up incorrectly, but you’re going to want to copy over your theme from the old store into the Enterprise store – not forgetting any modules you have that may be necessary the new store.

Next, it would be a good idea to show errors on the site. For this, just copy /errors/local.xml.sample into the same directory and name it local.xml.

In order to ensure your EE edition is pointing towards the correct database, you just need to edit the file /app/etc/local.xml.

<default_setup>
<connection>
<host><![CDATA[db_url_or_ip]]></host>
<username><![CDATA[db_username]]></username>
<password><![CDATA[db_password]]></password>
<dbname><![CDATA[db_name]]></dbname>
<initStatements><![CDATA[SET NAMES utf8]]></initStatements>
<model><![CDATA[mysql4]]></model>
<type><![CDATA[pdo_mysql]]></type>
<pdoType><![CDATA[]]></pdoType>
<active>1</active>
</connection>
</default_setup>

Above is an example of a connection string, just replace the host, username, password, and dbname to apply.

Once this is done, use your broswer to navigate to the Enterprise store. This will cause the set up scripts to run, effectively updating the database with the necessary data. If you don’t experience any errors and are able to see the Magento site, excellent! If, however, you do experience errors, this is totally normal. Many times, the error is minor and has to do with Magento attempting to create or rename a row that already exists, or is named correctly already. Often, just refreshing will get you past this particular error. If this doesn’t do the trick, then just navigate to the file named in the error, and comment out the offending line.

Now at this point you should be able to access your site, as well as the backend using the same admin credentials as the old site. You will need to change the information under Configuration->Design to point to the correct theme.

After this, depending on the extensions/modules you were using on the old site, you may find some functionality on your site not performing correctly. You will want to go through your site and ensure that any rewrites you have are correct, in accordance to Enterprise Edition. Hopefully, if this is not too much of a pain, then your upgraded site should be running in now time.