plperl (plperlu)
Загружаемый недоверенный процедурный язык PL/Perl.
Схема размещения:
pg_catalog
.PL/Perl — это загружаемый процедурный язык, позволяющий реализовывать функции PostgreSQL на языке программирования Perl.
Ограничения
В целях безопасности в Perl запрещаются все операции, взаимодействующие с окружением. В том числе операции с файлами
require
и use
(для внешних модулей). Поэтому функции на PL/Perl, в отличие от функций на C, никаким образом не могут взаимодействовать с внутренними механизмами сервера баз данных или обращаться к операционной системе с правами серверного процесса. Вследствие этого использовать этот язык может любой непривилегированный пользователь баз данных.Ссылки на документацию разработчика
Дополнительную информацию по поставляемому модулю plperl можно получить по ссылке.
Загружаемый недоверенный процедурный язык PL/Perlu.
Схема размещения:
pg_catalog
.PL/PerlU — это загружаемый недоверенный процедурный язык, позволяющий реализовывать функции PostgreSQL на языке программирования Perl.
Используется в случае необходимости написать на Perl код, функциональность которого не будет ограничиваться.
Например, может потребоваться функция на Perl, которая будет посылать почту, PL/Perl можно установить как «недоверенный» язык. Тогда будут доступны все возможности языка Perl.
Ограничения
В целях безопасности в Perl запрещаются все операции, взаимодействующие с окружением. В том числе операции с файлами
require
и use
(для внешних модулей). Поэтому функции на PL/Perl, в отличие от функций на C, никаким образом не могут взаимодействовать с внутренними механизмами сервера баз данных или обращаться к операционной системе с правами серверного процесса. Вследствие этого использовать этот язык можно разрешить любому непривилегированному пользователю баз данных.Ссылки на документацию разработчика
Дополнительную информацию по поставляемому модулю plperlu можно получить по ссылке.