E.2. Postgres Pro Standard 15.0.1

Дата выпуска: 2022-11-10

E.2.1. Обзор

Этот выпуск основан на PostgreSQL 15 и включает все новые возможности, появившиеся в PostgreSQL 15. Подробное их описание вы можете найти в Замечаниях к выпуску PostgreSQL 15. Ниже перечислены другие основные изменения и усовершенствования:

  • Адаптирована ванильная реализация поддержки правил сортировки ICU. Провайдер правил сортировки icu по-прежнему выбирается по умолчанию для всех локалей, кроме C и POSIX. Синтаксис указания провайдера основного правила сортировки после символа @ признан устаревшим.

  • Добавлена пилотная реализация стандарта SQL/JSON, включающая функции-конструкторы JSON, функции запросов SQL/JSON, функцию JSON_TABLE и предикаты IS JSON (см. Подраздел 9.16.3).

  • Добавлена поддержка архитектуры процессоров Эльбрус в операционных системах Альт 9/10 (для e2kv3/e2kv4), Альт 8.2 СП (для e2kv3/e2kv4) и Astra Linux «Ленинград» 8.1. В Альт 10 рекомендуется использовать ядро Linux 5.4.182-mcst-e8c-alt3.22.1 или новее.

  • Прекращена поддержка операционных систем Windows.

  • Добавлено расширение tds_fdw, предоставляющее обёртку сторонних данных для подключения к Microsoft SQL Server и другим базам данных, использующим протокол TDS (Tabular Data Stream, Поток табличных данных).

  • Модуль rum, реализующий индексы RUM на базе GIN, включён в состав Postgres Pro Standard.

  • Добавлено расширение pg_wait_sampling, предназначенное для периодического сбора статистики по событиям ожидания, в Postgres Pro Standard. Воспользовавшись этим расширением, вы сможете понять характер активности сервера, в том числе увидеть текущие события ожидания во всех обычных и фоновых рабочих процессах.

  • Реализована совместимость с TimescaleDB — базой данных с открытым исходным кодом, предназначенной для масштабируемой обработки временны́х рядов средствами SQL.

  • Приложение mamonsu обновлено до версии 3.5.2, в которой были исправлены некоторые ошибки и появились новые возможности. Основные изменения перечислены ниже:

    • Добавлены метрики использования автоочистки.

    • Добавлены макросы Zabbix на основе параметров дополнительных модулей из файла конфигурации, так что теперь триггеры можно динамически менять прямо в Zabbix без обновления файла конфигурации и перезапуска mamonsu.

  • Приложение pg_probackup обновлено до версии 2.5.9, в которой улучшена производительность и исправлены некоторые ошибки. Основные изменения перечислены ниже:

    • Устранена проблема в команде checkdb --amcheck, которая ранее выдавала ошибку, если в проверяемой базе содержались секционированные индексы.

    • Устранена ошибка, возникавшая на ведомом сервере в случае, если на ведущем работал агент pg_probackup другой версии.

  • Модуль pgpro_pwr обновлён до версии 4.1, главным новшеством которой стало добавление статистики JIT в отчёты.

Список расширений и дополнительных утилит Postgres Pro Standard, а также основных видимых пользователю отличий от ванильной версии PostgreSQL приведён в Разделе 2.

E.2.2. Миграция на версию 15

Для перехода с PostgreSQL или выпуска Postgres Pro Standard, базирующегося на предыдущей основной версии PostgreSQL, сначала установите его последний корректирующий выпуск, а затем выполните выгрузку/восстановление данных, применив pg_dumpall, или воспользуйтесь pg_upgrade.

Если вы решите использовать pg_upgrade, важно инициализировать новый кластер баз данных с совместимыми параметрами. В частности, обратите внимание на характеристику контрольных сумм и выбор провайдера основного правила сортировки в кластере, который вы будете обновлять. Понять, какое правило сортировки является основным в старом кластере и какой провайдер оно использует, можно по значению datcollate для базы данных template0 в каталоге pg_database. Если вы производите обновление с версии, в которой провайдер основного правила сортировки не задан, опустите указание провайдера при переходе с предыдущих версий Postgres Pro или выберите провайдер libc при переходе с ванильного PostgreSQL. Если вы обновляете Postgres Pro версии 9.6 или ниже и хотите сохранить существующие правила сортировки ICU, задайте для параметра --icu-locale значение lc_collate старого кластера. Если pg_upgrade создаст какие-либо скрипты SQL в текущем каталоге, выполните их для завершения обновления.

При обновлении инсталляции версии 10 или ниже рекомендуется выполнять выгрузку/восстановление данных. При этом возможные нарушения ограничений вам придётся устранить вручную. Если вариант с выгрузкой данных для вас неприемлем, использовать метод pg_upgrade, при котором в некоторых случаях может нарушиться целостность индексов и ограничений, следует при участии специалистов поддержки Postgres Pro Standard.

Примечание

Во избежание конфликтов не используйте пакет postgrespro-std-15 для установки исполняемых файлов Postgres Pro, а установите вместо него отдельные пакеты компонентов продукта. В этом случае режим автозапуска сервера, если он требуется, нужно будет включить вручную. Подробнее о предоставляемых пакетах вы можете узнать в Главе 16.

Особенности обновления, унаследованные от ванильной версии PostgreSQL, описаны в Разделе E.4.