Обновление и миграция Redmine между двумя серверами
Пришла пора обновить redmine с 3.4* версии до последней стабильной 4.1.1, при этом с переносом на другой сервер.
Старый сервер с Redmine
- CentOS 7
- mysql 5.5
- ruby 2.0 / rail 4.2
- thin (gem сервер приложения)
Новый сервер с Redmine
- CentOS 8
- mariadb 10
- ruby 2.6.5 / rails 5.2
- thin (gem сервер приложения)
Ниже опишу шаги, которые необходимо произвести, чтобы миграция прошла без проблем (в моем случае отработало без ошибок).
- Установка нужной версии Redmine по инструкциям с сайта https://redmine.org/
- На старом redmine я отключаю все задачи cron для сервиса, в том числе и для получения почты (Подробнее о настройке по ссылке)
- Останавливаю сервис thin systemctl stop thin
- Удаляю установленные плагины, точнее чистим записи в базе, если для установки плагина требуется миграция (Подробнее про удаление по ссылке)
- Далее снимаем дамп с БД mysqldump -u root -p redmine > redmine.sql (В моем случае используется mysql)
- Переносим на новый сервер scp redmine.sql [email protected]:/tmp
- Теперь выполняем команды на новом сервер cp /tmp/redmine.sql /path/to/redmine/
- Восстанавливаем дамп mysql -u root -p redmine < redmine.sql
- Теперь обязательный пункт, это совершить миграцию базы, чтобы применились изменения, иначе будет ошибка 500 при переходе в проекты rake db:migrate RAILS_ENV=production
- Дополнительно перезапускаем сервис thin
- Устанавливаем плагины
- Перенастраиваем адреса для проксирования, если есть пограничный сервер (в моем случае в роли обратного прокси выступает nginx)