Server Migration
Sometimes you want to migrate your running installation to another server. This How-To describe a plan to migrate a LogicalDOC installation o another machine, please note that this activity is delicate and may lead to data loss.
Assumptions
- Both the original system and the new one are the same version.
- Both the original system and the new one use the same database engine (eg: MySQL)
Definitions
- /OLDLDOC: represents the installation path of the installation to migrate
- /NEWLDOC: represents the installation path of the migrated installation
Step 1: Unbind the license from the old system
In general your license is bound to a specific hardware, so you have to unbind it before being able to activate the same in another server. Please follow the license unbinding guide here: https://docs.logicaldoc.com/en/license-management/license-unbind
Step 2: Install a fresh LogicalDOC in the new server
Preparing this new installation, make sure to use the same database engine you used in the old system (eg: MySQL).
It is really important to install the same version of LogicalDOC as the old system.
- Install a fresh LogicalDOC in the new server in /NEWLDOC. Follow the installation guide here: http://docs.logicaldoc.com/en/installation
- After the end of installation, stop LogicaDOC.
Step 3: Migrate the configuration files
- Copy all the files in /OLDLDOC/conf into /NEWLDOC/conf
- Open the file /NEWLDOC/conf/build.properties and replace all the occurrencies of /OLDLDOC with /NEWLDOC
- Open the file /NEWLDOC/conf/context.properties and replace all the occurrencies of /OLDLDOC with /NEWLDOC
- Reconfigure the connection to the new database, open the file /NEWLDOC/conf/context.properties and follow these instrucions:
- Locate the property jdbc.url and put the connection URL to your new database
- Locate the property jdbc.username and put the new database username
- Locate the property jdbc.password and put the new database password
Step 4: Migrate the documents repository
- Open the file /OLDLDOC/conf/context.properties and locate the property store.1.dir, it references a path we could call /OLDPATH
- Open the file /NEWLDOC/conf/context.properties and locate the property store.1.dir, it references a path we could call /NEWPATH
- Copy all the contents of /OLDPATH to /NEWPATH
This repository can be big so the time to transfer all the contents to the new server may require a lot of time.
Step 5: Migrate the full-text index
- Open the file /OLDLDOC/conf/context.properties and locate the property index.dir, it references a path we could call /OLDPATH
- Open the file /NEWLDOC/conf/context.properties and locate the property index.dir, it references a path we could call /NEWPATH
- Copy all the contents of /OLDPATH to /NEWPATH
Step 6: Migrate the plugins configurations
- Open the file /OLDLDOC/conf/context.properties and locate the property conf.plugindir, it references a path we could call /OLDPATH
- Open the file /NEWLDOC/conf/context.properties and locate the property conf.plugindir, it references a path we could call /NEWPATH
- Copy all the contents of /OLDPATH to /NEWPATH
Step 7: Migrate the database
- Make a dump file of the old database, if you are using MySQL, execute this command:
$ mysqldump -u username -ppassword --add-drop-database logicaldoc > logicaldoc.sql
- Move the dump file logicaldoc.sql in the new server and restore it in the new database, if you are using MySQL, execute this command:
$ mysql -u username -ppassword logicaldoc < logicaldoc.sql
Step 8: Start LogicalDOC
- Start LogicalDOC in the new server and check that all is working properly