====== Migration from 9 to 10 ====== Current version 9.0.4 (Mysql2) ===== New system ===== Install Debian 9.11 !!!. Refer to instruction [[https://www.openproject.org/download-and-installation/]] to install OP. apt-get install apt-transport-https # deb https://dl.packager.io/srv/deb/opf/openproject/stable/10/debian 10 main deb https://dl.packager.io/srv/deb/opf/openproject/stable/9/debian 9 main apt-get update apt-cache policy openproject apt-get install openproject=9.0.4-1570023722.b1f1184d.stretch sudo openproject configure Choose: * Install a new PostgreSQL server and database locally * Install apache2 server * Install new memcached server Now we have running OP9.0.4 with PGSql. ===== install pgloader ===== refer to [[https://www.openproject.org/operations/migration-guides/migrating-packaged-openproject-database-postgresql/]] wget -qO- https://dl.packager.io/srv/opf/pgloader-ccl/key | sudo apt-key add - sudo wget -O /etc/apt/sources.list.d/pgloader-ccl.list \ https://dl.packager.io/srv/opf/pgloader-ccl/master/installer/debian/9.repo sudo apt-get update sudo apt-get install pgloader-ccl ===== import backup ===== All backup parts are simply compressed directories and can be unpacked (or simply rsynced from another host). Only database dump need to be imported. Rsync command: rsync -r -a -v -e ssh root@REMOTE:/var/db/openproject/files/ /var/db/openproject/files ===== import mysql dump ===== apt-get install mysql-server mysql CREATE USER 'openproject'@'localhost' IDENTIFIED BY 'password'; CREATE DATABASE openproject CHARACTER SET utf8mb4; GRANT ALL PRIVILEGES ON openproject.* TO 'openproject'@'localhost'; \q Configure openproject for mysql: * store original postgresql somewhere: openproject config:get DATABASE_URL * openproject config:set MYSQL_DATABASE_URL="mysql2://openproject:password@127.0.0.1:3306/openproject" * openproject config:set DATABASE_URL="mysql2://openproject:password@127.0.0.1:3306/openproject" * openproject run rake db:create:all Restore backup dump: zcat mysql-dump-20191211011301.sql.gz | mysql -u openproject -p openproject Restart service: systemctl restart openproject Set database URL to previously created postgresql database: openproject config:set DATABASE_URL=postgres://openproject:...@127.0.0.1:45432/openproject Migrate database: sudo openproject run ./docker/mysql-to-postgres/bin/migrate-mysql-to-postgres Remove mysql: apt-get remove mysql-server openproject config:unset MYSQL_DATABASE_URL Restart service: systemctl restart openproject ===== Upgrade OP to 10 ===== deb https://dl.packager.io/srv/deb/opf/openproject/stable/9/debian 9 main deb https://dl.packager.io/srv/deb/opf/openproject/stable/10/debian 9 main apt-get update apt-cache policy openproject apt-get install openproject=10.0.0-1569215906.69231eeb.stretch sudo openproject configure apt-get upgrade sudo openproject configure