pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。
目录
PL/Perl 是一种可装载的 过程语言,它使 Perl 编程 语言可以用来编写 PostgreSQL 函数。
通常,PL/Perl 作为一个名为 plperl 的“受信任”编程 语言安装。在这种设置下, 某些 Perl 操作被禁用以保障 安全。一般来说, 受限制的是那些与环境 交互的操作。这包括 文件句柄操作、require 和 use(用于 外部模块)。没有办法访问 数据库后端的内部,也无法在 PostgreSQL 用户 ID 的权限下获得 OS 级访问——而 C 函数 可以做到。因此,任何 非特权数据库用户都可以被允许使用这种 语言。
有时需要编写不受限制的 Perl 函数——例如,可能 需要一个发送邮件的 Perl 函数。为了处理这些情况,PL/Perl 还可以作为一种 “非受信任”语言安装(通常命名为 plperlu)。 这种情况下完整的 Perl 语言 都可用。PL/PerlU 函数的 编写者必须注意函数不能被用来做任何 不希望的事,因为它将能做以 数据库管理员身份登录的用户 能做的任何事。注意 数据库系统只允许数据库超级用户在非受信任 语言中创建 函数。
译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。