Установка
Поддерживаемые платформы
Платформа, то есть комбинация архитектуры процессора и операционной системы, считается поддерживаемой сообществом разработчиков QHB, если в коде предусмотрены возможности для работы на этой платформе и на текущий момент он успешно собирается и проходит регрессионные тесты на ней.
Для QHB версии 1.5.2 поддерживаются:
- Centos Linux 7, x86_64
- Centos Linux 8, x86_64
- РЕД ОС 7, x86_64
- Альт Сервер 8 СП
- Альт Сервер 9, x86_64
- Fedora 36, x86_64
- Fedora 37, x86_64
- Fedora 38, x86_64
- Fedora 39, x86_64
- Linux Debian 10, x86_64
- Astra Linux Special Edition, «Смоленск», 1.7, x86_64
- Ubuntu 18.04, x86_64
- Ubuntu 22.04, x86_64
- openSUSE Leap 15.4, x86_64
- в docker-контейнере
Состав поставки
QHB поставляется в виде следующих пакетов:
- qhb-core — ядро QHB;
- qhb-contrib — расширения QHB;
- qcp — пулер соединений;
- qdl — средство быстрой загрузки;
- qdlm — средство загрузки данных метрик в БД;
- qbackup — инструмент резервного копирования;
- metricsd — сервер метрик.
Дополнительно предоставляются пакеты внешних расширений:
- PostGIS — Пространственные и географические объекты для QHB;
- Patroni — Управление высокодоступными кластерами;
- mysql_fdw — обертка внешних данных MySQL для QHB;
- Orafce — функции совместимости и пакеты Oracle;
- pg_hint_plan — модуль настройки планов выполнения с помощью «подсказок»;
- pg_repack — модуль реорганизации таблиц с минимальными блокировками;
- pg_store_plans — модуль для отслеживания статистики плана выполнения операторов SQL;
- pgtt - модуль управления глобальными временными таблицами;
- plpgsql_check — модуль расширенной проверки plpgsql;
- sr_plan — модуль управления хранением планов запросов в QHB.
Установка из репозитория пакетов
ВНИМАНИЕ!
Если вы обновляете версию QHB или мигрируете базы данных с других СУБД, обратитесь к разделу Установка с обновлением.
В этой главе описывается установка QHB из предварительно упакованного дистрибутива. Двоичные пакеты QHB для поддерживаемых платформ можно найти на странице загрузки.
Стандартная процедура установки QHB выглядит так:
Подключение репозитория и установка пакетов
Подключите репозиторий пакетов и установите пакеты для выбранной платформы со страницы загрузки.
Инициализация кластера баз данных
Инициализируйте кластер баз данных при помощи утилиты initdb или qhb_bootstrap. В данном примере /opt/qhb/data — расположение каталога базы данных.
/usr/local/qhb/bin/initdb -D /opt/qhb/data -U qhb
или
/usr/local/qhb/bin/qhb_bootstrap -D /opt/qhb/data -U qhb
ВНИМАНИЕ!
Запуск утилит необходимо производить из-под пользователя qhb, владельца экземпляра, или предварять запуск командойsudo -u qhb
.
Примечание
Рекомендуется пользоваться утилитой qhb_bootstrap. Утилита initdb планируется к удалению в будущих версиях QHB.
Настройка сервиса
Если необходимо, настройте сервис базы данных; см. Настройка сервиса базы данных.
Создание базы данных и конфигурирование
Следуйте инструкции по созданию и настройке базы данных; см. Начало работы.
Установка с обновлением
Обновление версии QHB и миграция баз данных с других СУБД.
При переходе с одной версии QHB к другой иногда происходят такие изменения в структурах данных каталога СУБД, которые делают невозможным функционирование новой версии без преобразования данных старой базы.
Для такого преобразования предусмотрена специальная утилита обновления экземпляра qhb_upgrade.
Некоторые обновления не требуют запуска qhb_upgrade:
- Обновление пакетов из репозитория, если база данных еще не была создана, или планируется создание новой, а старая не важна
- Установка QHB впервые
- Миграция базы с помощью утилиты qhb_dump или qhb_dumpall.
Если же планируется перенос или миграция базы данных, перед обновлением нужно воспользоваться утилитой qhb_upgrade. Утилита может обновлять данные не только при обновлении версии QHB, но даже при миграции с PostgreSQL некоторых версий.
Некоторые промежуточные обновления QHB не меняют структуру данных, и их установка не требует каких-то специальных действий. В этом случае утилита qhb_upgrade сообщит об этом.