Older versions of RhodeCode Enterprise such as versions 1.5 or 1.7 may be running with a
MySQL database which uses MyISAM as the tables engine. RhodeCode Enterprise requires MySQL
databases to use InnoDB as the tables engine.

To upgrade your MySQL database to use InnoDB as the tables engine, see the
following example:

It is better to contact us before you upgrade so that you have
a matching licence token/key pair. Otherwise upgrading from a 1x or
2x version to a RhodeCode Enterprise 3.x version could result in down time. For license
inquiries, see the
Licence Management section.

If you upgrade without a new licence key, your RhodeCode Enterprise instance will display a
licence token on the following page:
Admin – Settings ‣ License. Once upgraded, contact us
with this licence token and we can send you the matching licence key.

If you have received a licence/token key pair, use the following instructions to
configure them.

Update the Licence Token in /home/user/.rccontrol/instance-id/rhodecode.ini

Once the token has been changed, the licence key provided can be entered on
the RhodeCode Enterprise Interface under
Admin ‣ Setting ‣ Licence.

Important

If you upgrade without a valid licence key, all users except Admin will be
locked out of the new instance. If you cannot wait to contact us, you can
run a new installation in parallel using a trial licence while
maintaining your previous version, see Running Parallel Instances.

If you wish to upgrade your version of RhodeCode Enterprise from the command line,
use the following steps.

Importing is a necessary step as RhodeCode Control now manages all of the dependencies
needed for RhodeCode Enterprise.

To import RhodeCode Enterprise into RhodeCode Control, use the following steps.

Identify the production.ini file that manages your current RhodeCode Enterprise
installation. The default location is ~/rhodecode/data/.

Use the rccontrolimport command with the Enterprise argument,
and specify the path to production.ini.

RhodeCode Control uses this file to create a new
/home/user/.rccontrol/instance-id/rhodecode.ini file. This
imports your RhodeCode Enterprise settings and points your new instance to the original
repository directory.

The production.ini file also points to the RhodeCode Enterprise database,
which contains your permissions and user management settings. RhodeCode Control
imports this database and upgrades it as needed.

During import, set a new port if prompted.

# Import your current version
$ rccontrol import Enterprise /home/{user}/rhodecode/data/production.ini
Parsing "/home/{user}/rhodecode/data/production.ini":
- host: 0.0.0.0
- port: 5000
- database: sqlite:////home/{user}/rhodecode/data/rhodecode.db?timeout=60
Port is not accessible
# Set a new port# You will be asked for this if you don't stop your running instance
Port for the Enterprise server to use [5000]: 5500
Importing to instance: enterprise-2
Version detected: 2.2.3
Installing RhodeCode Enterprise

You need to configure a VCS Server to run RhodeCode Enterprise 3.x with full functionality. If you
install a VCS Server prior to installing RhodeCode Enterprise, it will automatically be connected
to your instance during installation. If you need to manually configure the
connection afterwards, see the Change VCS Server Settings section.

To install a VCS Server to work with your new instance of RhodeCode Enterprise,
use the following example: