↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

pg_utl_smtp 2.0 发布

发布于 2026-10-18,HexaCluster
相关开源软件

马达加斯加塔那那利佛,2026 年 10 月 6 日

PostgreSQL UTL_SMTP 兼容扩展

pg_utl_smtp 是一个 PostgreSQL 扩展,用于创建、管理和使用 Oracle 风格的 UTL_SMTP 包,用法与行为与 Oracle UTL_SMTP 包相同。该项目来自 HexaRocket。

该扩展支持从触发器或存储过程中发送邮件通知。将它直接集成到数据库中后,无需等待应用介入,就能根据数据触发动作,例如安全告警或达到最低阈值时的通知。

pg_utl_smtp 2.0.0 现已发布。这个大版本新增异步模式,可通过启用 pg_utl_smtp.asynchronous 使用。Oracle 版本没有异步模式,但在通过 pg_utl_smtp 迁移 MSSQL 的 sp_send_dbmail() 过程时,这项功能很有用。

本次发布的其他变化:

  • SMTP 服务器针对 HELO/EHLO、MAIL、RCPT、DATA、DATA 结束或 QUIT 返回错误时,抛出错误。
  • 修复连接时重复发送 EHLO 的问题。
  • 支持 SSL/TLS 连接(secure_connection_before_smtp)。
  • QUIT 会释放连接,再次执行 QUIT 将报错。
  • 无法建立连接时,WARNING 会给出原因。
  • 通过 GitHub Actions 增加回归测试。

升级已安装版本至 2.0.0 时,执行:

sql ALTER EXTENSION pg_utl_smtp UPDATE;

该扩展使用基于 Net::SMTP Perl 模块的 plperl 存储过程,提供 UTL_SMTP 包中的过程。

链接与致谢

pg_utl_smtp 是采用 PostgreSQL 许可证的开放项目,由 HexaCluster Corp. 的 Gilles Darold 创建,是 HexaRocket 迁移方案的一部分。欢迎通过 GitHub 提交想法、功能请求或补丁,共同改进工具。

关于 pg_utl_smtp

pg_utl_smtp 是 HexaCluster Corp. 的原创项目。HexaCluster 专注于 PostgreSQL 迁移与技术支持。更多信息请联系团队。

文档:项目 README。