Приложение F. Дополнительно поставляемые модули
Содержание
- F.1. adminpack
- F.2. amcheck
- F.3. auth_delay
- F.4. auto_explain
- F.5. bloom
- F.6. btree_gin
- F.7. btree_gist
- F.8. chkpass
- F.9. citext
- F.10. cube
- F.11. dblink
- F.12. dict_int
- F.13. dict_xsyn
- F.14. earthdistance
- F.15. file_fdw
- F.16. fuzzystrmatch
- F.17. hstore
- F.18. intagg
- F.19. intarray
- F.20. isn
- F.21. lo
- F.22. ltree
- F.23. pageinspect
- F.24. passwordcheck
- F.25. pg_buffercache
- F.26. pgcrypto
- F.27. pg_freespacemap
- F.28. pg_prewarm
- F.29. pgrowlocks
- F.30. pg_stat_statements
- F.31. pgstattuple
- F.32. pg_trgm
- F.33. pg_visibility
- F.34. postgres_fdw
- F.35. seg
- F.36. sepgsql
- F.37. spi
- F.38. sslinfo
- F.39. tablefunc
- F.40. tcn
- F.41. test_decoding
- F.42. tsm_system_rows
- F.43. tsm_system_time
- F.44. unaccent
- F.45. uuid-ossp
- F.46. xml2
- F.2. amcheck
В этом и следующем приложении содержится информация о модулях, которые можно найти в каталоге contrib
дистрибутива PostgreSQL. В их число входят средства портирования, утилиты анализа и подключаемые функции, не включённые в состав основной системы PostgreSQL, в основном потому что они адресованы ограниченной аудитории или находятся в экспериментальном состоянии, не подходящем для основного дерева кода. Однако это всё не умаляет их полезность.
В этом приложении описываются расширения и другие подключаемые серверные модули, включённые в contrib
. В Приложении G описываются вспомогательные программы.
При сборке сервера из дистрибутивного исходного кода эти компоненты собираются, только если выбрана цель «world» (см. Шаг 2). Вы можете собрать и установить их отдельно, выполнив:
make
make install
в каталоге contrib
в настроенном дереве исходного кода; либо собрать и установить только один выбранный модуль, проделав то же самое в его подкаталоге. Для многих модулей имеются регрессионные тесты, которые можно выполнить, запустив:
make check
перед установкой или
make installcheck
, когда сервер PostgreSQL будет работать.
Если вы используете готовую собранную версию PostgreSQL, эти модули обычно поставляются в виде отдельного подпакета, например postgresql-contrib
.
Многие модули предоставляют дополнительные пользовательские функции, операторы и типы. Чтобы использовать один из таких модулей, когда его исполняемый код установлен, вы должны зарегистрировать новые объекты SQL в СУБД. В PostgreSQL версии 9.1 и новее для этого нужно воспользоваться командой CREATE EXTENSION. В чистой базе данных вы можете просто выполнить:
CREATE EXTENSION имя_модуля
;
Запускать эту команду должен суперпользователь баз данных. При этом новые объекты SQL будут зарегистрированы только в текущей базе данных, так что эту команду нужно выполнять в каждой базе данных, в которой вы хотите пользоваться функциональностью этого модуля. Вы также можете запустить её в template1
, чтобы установленное расширение копировалось во все впоследствии создаваемые базы по умолчанию.
Многие модули позволяют устанавливать свои объекты в схему по выбору. Для этого нужно добавить SCHEMA
в команду имя_схемы
CREATE EXTENSION
. По умолчанию объекты устанавливаются в текущую схему для создаваемых объектов, которой по умолчанию становится public
.
Если ваша база данных была получена в результате выгрузки/перезагрузки данных PostgreSQL версии до 9.1, и вы ранее использовали версию этого модуля, рассчитанную на версию до 9.1, вместо этого вы должны выполнить:
CREATE EXTENSION имя_модуля
FROM unpackaged;
При этом объекты этого модуля версии до 9.1 будут упакованы в соответствующий объект расширения. После этого обновления расширения будут осуществляться командой ALTER EXTENSION. За дополнительными сведениями об обновлении расширении обратитесь к Разделу 37.15.
Однако некоторые из этих модулей не являются «расширениями» в этом смысле, а подключаются к серверу по-другому, например, через параметр конфигурации shared_preload_libraries. Подробнее об этом говорится в документации каждого модуля.