При поднятии воркспейса может произойти прерывание процесса с ошибкой
The database must be manually upgraded
Это означает что MySQL пакет и директория с данными имеют разные версии, что требует обновления директории с данными до версии mysql пакета. Переходим в директорию с контейнером с помощью команды (директория может быть другой):
cd /om/workspace1/container
Затем подключаемся к вагрант контейнеру с помощью команды:
vagrant ssh
После чего нам нужно перейти под root пользователя, вводим команду:
sudo su
Теперь нам необходимо перезагрузить сервис mariadb
для этого введём команду:
systemctl restart mariadb
Выполняем команду:
mysql_upgrade
Выполняем повторно команду
mysql_upgrade
Если сообщение содержит текст already upgraded
, то обновление успешно выполнено и можно выходить из контейнера и переходить к перезагрузке воркспейса или переходить к обновлению OLTP базы, если нет, то продолжаем обновление далее по инструкции
Перезагружаем сервис mariadb
, для этого введём команду:
systemctl restart mariadb
После этого нам нужно зайти в MySQL терминал с помощью команды:
mysql
И в MySQL терминале нужно выполнить команду:
FLUSH PRIVILEGES;
Затем выполняем команду сброса пользователя root:
ALTER USER `root`@`localhost` IDENTIFIED VIA mysql_native_password USING PASSWORD("syeAIuL4S5Sw9t9") OR unix_socket;
Выходим из MySQL терминала с помощью команды:
exit
И выполняем команду:
mysql_upgrade
Если сообщение содержит текст already upgraded
, то обновление успешно выполнено и можно выходить из контейнера и переходить к перезагрузке воркспейса или переходить к обновлению OLTP базы
Если сообщение не содержит текст already upgraded
, то выполняем команду mysql_upgrade
до тех пор, пока его не получим
Повторяем действия по обновлению из инструкции выше, заменяя сервис mariadb
на mariadb@oltp
, например
systemctl restart mariadb@oltp
Команду mysql_upgrade
выполняем с флагом, который указывает на конфигурацию
mysql_upgrade --defaults-file=/etc/mysql/debian.oltp.cnf
Выходим из контейнера с помощью команды exit
Далее нужно перейти в директорию с нашим инсталлятором воркспейса и выполнить штатную остановку воркспейса, но с флагом
force
т.е. команда будет выглядеть таким образом:
/om/workspace-installer/current/install workspace --path /om/workspace1/manifest.json shutdown --force
После этого можно поднимать воркспейс:
/om/workspace-installer/current/install workspace --path /om/workspace1/manifest.json up
На этом всё, проблема решена.