在Postgres中,管道化是一种客户端特性,自7.4版本以来得以实现,PostgreSQL 14及以后的版本通过libpq支持。使用psql命令可以轻松启动和结束管道化,从而提高查询性能,测试表明在不同网络条件下显著加速查询处理。
在Mac M2上安装pg gem的步骤是使用命令`gem install pg:1.5.9 -- --with-pg-config=$(brew --prefix)/opt/libpq/bin/pg_config`。
本文讨论了通过静态链接libpq来提高PostgreSQL的可移植性。PostgreSQL通常依赖libldap进行身份验证,这增加了许多间接依赖。作者建议去除LDAP支持,以减少依赖并提高可移植性。通过修改Alpine的APKBUILD文件,创建了一个不依赖于libldap的自定义PostgreSQL包,从而简化了构建过程。静态链接使程序在不同环境中更具可移植性,尽管管理复杂依赖可能较为困难。
本文介绍了使用libpq添加多个客户端证书对的功能,并解释了准备不同证书对进行测试和验证的方法。还提供了编译PostgreSQL、配置服务器和客户端的步骤。总结了多个客户端证书功能的基本原理。
Postgres 16新增了一个名为require_auth的连接参数,允许libpq客户端定义可接受的认证类型列表,以保护免受降级攻击。该功能可与环境变量PGREQUIREAUTH一起使用,并映射到相应的认证请求代码。
完成下面两步后,将自动完成登录并继续当前操作。