E.7. Postgres Pro Standard 16.0.1 #

Дата выпуска: 2023-10-19

E.7.1. Обзор #

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

  • Добавлены системные представления pg_stats_vacuum_tables, pg_stats_vacuum_indexes и pg_stats_vacuum_database, показывающие статистики очистки таблиц, индексов и баз данных соответственно. Ранее эти статистики были доступны в pgpro_stats.

  • Добавлены новые параметры конфигурации pgpro_build, pgpro_edition и pgpro_version, сообщающие идентификатор состояния исходного кода Postgres Pro, редакцию и версию сервера соответственно.

  • Добавлены новые предопределённые роли:

    • pg_create_tablespace, позволяющая выполнять команду CREATE TABLESPACE без прав суперпользователя.

    • pg_manage_profiles, позволяющая выполнять команды CREATE PROFILE, ALTER PROFILE и DROP PROFILE без прав суперпользователя.

  • Модуль aqo обновлён до версии 2.0, в которую включены следующие основные изменения и усовершенствования:

    • Настройка и использование модуля упрощены. Теперь поведение aqo в основном зависит от трёх параметров конфигурации: aqo.enable, aqo.mode и aqo.advanced, которые соответственно определяют состояние aqo, режим его работы и то, собирается ли статистика изолированно по запросам.

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

    • Модуль aqo теперь может работать независимо с несколькими базами данных.

    • Чтобы мгновенно отключить/включить aqo на уровне базы данных, теперь достаточно выполнить команду DROP/CREATE EXTENSION.

    • Уменьшено потребление памяти.

  • Расширение oracle_fdw обновлено до версии 2.6.0.

  • Модуль orafce обновлён до версии 4.6.1.

  • Обновлена утилита pg_integrity_check, в ней появилось три новых параметра.

  • Расширение pg_proaudit обновлено до версии 1.2, в которую были включены следующие изменения:

    • Имя событий CONNECT, регистрируемых pg_proaudit, изменено на AUTHENTICATE.

    • Удалены параметры конфигурации pg_proaudit.syslog_facility и pg_proaudit.syslog_ident. Вместо них можно использовать параметры syslog_ident и syslog_facility.

    • Записи pg_proaudit в syslog теперь имеют метку AUDIT, что позволяет однозначно их определять.

    • Добавлен аргумент db_name для функций, которые добавляют и удаляют правила регистрации событий. Этот аргумент позволяет указать имя базы данных, для которой необходимо регистрировать события безопасности. Кроме того, аргумент role_oid теперь может передаваться со значением NULL, чтобы включить регистрацию действий для всех пользователей.

  • Приложение pg_probackup обновлено до версии 2.6.6, в которой улучшена стабильность команды catchup.

  • Модуль pgpro_pwr обновлён до версии 4.3, в которой реализована ролевая модель и добавлено несколько таблиц отчётов.

  • Расширение tds_fdw обновлено до версии 2.0.3.

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

E.7.2. Миграция на версию 16 #

Вы можете перейти на Postgres Pro Standard 16 с той же или предыдущей версии PostgreSQL (которая поддерживается выбранным способом обновления) и с предыдущей версии Postgres Pro Standard. То же самое справедливо для перехода на Postgres Pro Standard Certified 16. Способы обновления кластера баз данных описаны в Разделе 17.6. Если у вас возникнут проблемы при переходе на новую версию, обратитесь в службу поддержки Postgres Pro Standard. Обратный переход не поддерживается. Обратите внимание, что переход с Postgres Pro Standard на Postgres Pro Standard Certified той же основной версии (или наоборот) — это обновление на совместимую версию Postgres Pro (за подробным описанием обратитесь к Разделу 17.6).

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

Если вы решите использовать pg_upgrade, важно инициализировать новый кластер баз данных с совместимыми параметрами. В частности, обратите внимание на характеристику контрольных сумм в кластере, который вы будете обновлять. Если pg_upgrade создаст какие-либо скрипты SQL в текущем каталоге, выполните их для завершения обновления.

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

Примечание

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

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