Перейти к основному содержимому

plperlu. Загружаемый недоверенный процедурный язык PL/Perlu

В исходном дистрибутиве установлено по умолчанию: нет.

Связанные компоненты: отсутствуют.

Схема размещения: pg_catalog.

примечание

Расширение вынесено в часть дистрибутива «untrusted». Подробное описание решения представлено в разделе «Информация по Untrusted-расширениям» документа «Руководство по установке».

PL/PerlU — это загружаемый недоверенный процедурный язык, позволяющий реализовывать функции PostgreSQL на языке программирования Perl.

Используется в случае необходимости написать на Perl код, функциональность которого не будет ограничиваться.

Например, может потребоваться функция на Perl, которая будет посылать почту, PL/Perl можно установить как «недоверенный» язык. Тогда будут доступны все возможности языка Perl.

Доработка

Доработка не проводилась.

Ограничения

В целях безопасности в Perl запрещаются все операции, взаимодействующие с окружением. В том числе операции с файлами, require и use (для внешних модулей). Поэтому функции на PL/Perl, в отличие от функций на C, никаким образом не могут взаимодействовать с внутренними механизмами сервера баз данных или обращаться к операционной системе с правами серверного процесса. Вследствие этого использовать этот язык может любой непривилегированный пользователь баз данных.

Установка

Обозначения

Далее в примерах команд будут использоваться следующие обозначения:

  • {OS} – наименование операционной системы и ее версия;
  • {product_version} – версия продукта (текущая версия: 7.3.1);
  • {base_version} – базовая версия продукта (текущая: 7).

Устанавливая язык, укажите имя plperlu, чтобы выбрать «недоверенную» вариацию PL/Perl.

При наличии прав администратора СУБД включение модуля выполняется следующими шагами:

  1. Установите rpm/deb-пакет расширения, в зависимости от окружения:

       sudo dnf install pangolin-dbms-{base_version}-plperl-7.3.1-{OS}.x86_64.rpm
    Подсказка

    Пример заполненной команды:

       cd distributive
    tar -xzf untrusted/untrusted.tar.gz -C untrusted/
    sudo dnf -y install untrusted/pangolin-dbms-7-plperl-7.3.1-sberlinux9.x86_64.rpm
  2. Подключиться к БД, в которой необходимо зарегистрировать расширение.

  3. Выполните активацию расширения с помощью команды:

    CREATE EXTENSION plperlu SCHEMA ext;

Отключение

Для отключения расширения необходимо его удалить.

  1. Подключиться к БД, в которой зарегистрировано расширение.

  2. Выполните отключение расширения с помощью команды:

    DROP EXTENSION plperlu;
  3. Удалите rpm/deb-пакет с расширением.

Настройка

Настройка не требуется.

Ссылки на документацию разработчика

Дополнительно поставляемый модуль plperlu.