Server Migration: Difference between revisions
| No edit summary | |||
| (3 intermediate revisions by the same user not shown) | |||
| Line 13: | Line 13: | ||
| *'''/NEWLDOC''': represents the installation path of the migrated installation | *'''/NEWLDOC''': represents the installation path of the migrated installation | ||
| == Step 1: Install a fresh LogicalDOC in the new server == | == 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).<br/> | Preparing this new installation, make sure to use the same database engine you used in the old system (eg: MySQL).<br/> | ||
| <u>It is really important to install the same version of LogicalDOC as the old system.</u> | <u>It is really important to install the same version of LogicalDOC as the old system.</u> | ||
| Line 20: | Line 24: | ||
| *After the end of installation, stop LogicaDOC. | *After the end of installation, stop LogicaDOC. | ||
| == Step  | == Step 3: Migrate the configuration files == | ||
| * Copy all the files in '''/OLDLDOC'''/conf into '''/NEWLDOC'''/conf | * 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/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''' | * 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.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.username''' and put the new database username | ||
| ** Locate the property '''jdbc.password''' and put the new database password | ** Locate the property '''jdbc.password''' and put the new database password | ||
| == Step  | == 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 '''/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''' | * Open the file '''/NEWLDOC'''/conf/context.properties and locate the property '''store.1.dir''', it references a path we could call '''/NEWPATH''' | ||
| Line 36: | Line 40: | ||
| This repository can be big so the time to transfer all the contents to the new server may require a lot of time. | This repository can be big so the time to transfer all the contents to the new server may require a lot of time. | ||
| == Step  | == 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 '''/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''' | * 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''' | * Copy all the contents of '''/OLDPATH''' to '''/NEWPATH''' | ||
| == Step  | == 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 '''/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''' | * 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''' | * Copy all the contents of '''/OLDPATH''' to '''/NEWPATH''' | ||
| == Step  | == Step 7: Migrate the database == | ||
| * Make a dump file of the old database, if you are using MySQL, execute this command:   | * Make a dump file of the old database, if you are using MySQL, execute this command:   | ||
|   $ mysqldump -u '''username''' -p'''password''' --add-drop-database '''logicaldoc''' > logicaldoc.sql |   $ mysqldump -u '''username''' -p'''password''' --add-drop-database '''logicaldoc''' > logicaldoc.sql | ||
| Line 52: | Line 56: | ||
|   $ mysql -u '''username''' -p'''password''' '''logicaldoc''' < logicaldoc.sql |   $ mysql -u '''username''' -p'''password''' '''logicaldoc''' < logicaldoc.sql | ||
| == Step  | == Step 8: Start LogicalDOC == | ||
| * Start LogicalDOC in the new server and  | * Start LogicalDOC in the new server and check that all is working properly | ||
| [[Category: Migration]] | [[Category: Migration]] | ||
Revision as of 08:00, 12 April 2021
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

