postgrespro-ent-16-contribСодержание
daterange, включающий верхнюю границу диапазонаpg_statistichstore для хранения пар ключ-значениеjsonbINSERT, UPDATE, DELETE, SELECT INTO или COPY.old_snapshot_thresholdDBMS_APPLICATION_INFOmchar и mvarchar на основе триграммcrosstab и не только)SYSTEM_ROWS для TABLESAMPLESYSTEM_TIME для TABLESAMPLEВ этом приложении, Приложении G, Приложении H и Приложении I содержится информация о необязательных компонентах, поставляемых в составе дистрибутива Postgres Pro Enterprise. В их число входят средства портирования, утилиты анализа и подключаемые функции, не включённые в состав основной системы Postgres Pro. Они отделены в основном потому, что адресованы ограниченной аудитории или находятся в экспериментальном состоянии, не подходящем для основного дерева кода. Однако это всё не умаляет их полезность.
В этом приложении, Приложении G и Приложении H описываются расширения и другие подключаемые серверные модули. В Приложении I описываются вспомогательные программы.
Многие компоненты предоставляют дополнительные пользовательские функции, операторы и типы, упакованные в расширения. Чтобы использовать одно из таких расширений, когда его исполняемый код установлен, необходимо зарегистрировать новые объекты SQL в СУБД. Для этого нужно воспользоваться командой CREATE EXTENSION. В чистой базе данных можно просто выполнить:
CREATE EXTENSION имя_расширения; При этом новые объекты SQL будут зарегистрированы только в текущей базе данных, так что эту команду нужно выполнять в каждой базе данных, в которой планируется использовать функциональность этого расширения. Также можно запустить его в базе данных template1, чтобы установленное расширение копировалось во все впоследствии создаваемые базы по умолчанию.
Для всех этих расширений команду CREATE EXTENSION должен выполнять суперпользователь, если только расширение не помечено как «доверенное». Доверенные расширения могут устанавливать любые пользователи, имеющие право CREATE в текущей базе данных. В следующих разделах, где описываются расширения, отмечено, какие из них являются доверенными. Вообще говоря, доверенными расширениями считаются те, которые не предоставляют доступ к функциональности за рамками базы данных.
Следующие расширения являются доверенными при установке по умолчанию:
| btree_gin | fuzzystrmatch | ltree | tcn |
| btree_gist | hstore | pgcrypto | tsm_system_rows |
| citext | intarray | pg_trgm | tsm_system_time |
| cube | isn | seg | unaccent |
| dict_int | lo | tablefunc | uuid-ossp |
Многие расширения позволяют устанавливать свои объекты в схему по выбору. Для этого нужно добавить SCHEMA в команду имя_схемыCREATE EXTENSION. По умолчанию объекты устанавливаются в текущую схему для создаваемых объектов, которой по умолчанию становится public.
Однако некоторые из этих компонентов не являются «расширениями» в этом смысле, а подключаются к серверу по-другому, например, через параметр конфигурации shared_preload_libraries. Подробнее об этом говорится в документации каждого компонента.
В этом приложении содержится информация о модулях и расширениях, которые доступны в Postgres Pro Enterprise как отдельные подпакеты postgrespro-ent-16-contrib. Обратите внимание, что расширение toastapi для добавления пользовательских реализаций TOAST также доступно в postgrespro-ent-16-contrib (за подробной информацией обратитесь к Подразделу 74.2.3).