Краткая инструкция по обновлению

В этом разделе описывается базовый сценарий обновления QHB с помощью утилиты qhb_upgrade. Более подробную информацию см. на ее справочной странице.

В случае если ваш сервер уже остановлен, первый шаг можно пропустить.

Для остановки сервера баз данных введите:

qhb_ctl -D $PGDATA stop

или, если он запускался через сервис:

sudo systemctl stop qhb

Примечание
Файлы конфигурации и данных, используемые СУБД, обычно хранятся в одном каталоге, называемом PGDATA (аналогично имени переменной среды). В наших примерах мы будем использовать /opt/qhb/data.old как путь к данным старого каталога кластера базы данных и /opt/qhb/data как путь к данным нового каталога кластера базы данных. Каталог /usr/local/qhb.old/bin — это место хранения исполняемых файлов старой версии QHB, а каталог /usr/local/qhb/bin — это место хранения исполняемых файлов новой версии QHB.

Переместите старый кластер:

sudo mv /opt/qhb/data /opt/qhb/data.old

Переместите текущий установочный каталог QHB, чтобы он не мешал новой установке QHB:

sudo mv /usr/local/qhb /usr/local/qhb.old

Установите новые пакеты QHB командой от пользователя с правами суперпользователя:

yum [ install | upgrade ] <путь до каталога c пакетами/названия пакетов>

Примечание
В зависимости от ОС команда для установки может меняться. Если вы устанавливаете пакеты из репозитория QHB, можно воспользоваться пошаговой инструкцией по начальной загрузке, установке и запуску.

Вновь создайте папку для базы данных:

sudo mkdir -p /opt/qhb/data

Разрешите пользователю qhb доступ к ней:

sudo chown -R qhb /opt/qhb/data

Далее рекомендуется переключиться на пользователя qhb и выполнять команды от его имени. В ином случае необходимо использовать sudo -u qhb для всех последующих команд, если вы работаете от пользователя с правами sudo.

Инициализируйте кластер базы данных командой:

qhb_bootstrap -D /opt/qhb/data

Выполните обновление QHB через утилиту qhb_upgrade:

qhb_upgrade \
  --old-bindir=/usr/local/qhb.old/bin/ \
  --new-bindir=/usr/local/qhb/bin/ \
  --old-datadir=/opt/qhb/data.old \
  --new-datadir=/opt/qhb/data --verbose

Примечание
В случае ошибки обновления необходимо убедиться, что пользователь qhb имеет права доступа ко всем указанным каталогам.
Также пользователь qhb должен обладать правами на запись в той директории, из которой происходит запуск команды qhb_upgrade.

Ожидаемый результат:

Upgrade Complete

Для запуска сервера баз данных введите:

qhb_ctl -D /opt/qhb/data start

или

sudo systemctl start qhb