开发者社区> chrisx> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Postgresql共享库预加载(Shared Library Preloading)

简介: Postgresql共享库预加载(Shared Library Preloading) PostgreSQL支持通过动态库的方式扩展PG的功能,pg在使用这些功能时需要预加载相关的共享库。有几种设置可用于将共享库预加载到服务器中,如下 local_preload_libraries (strin...
+关注继续查看

Postgresql共享库预加载(Shared Library Preloading)

PostgreSQL支持通过动态库的方式扩展PG的功能,pg在使用这些功能时需要预加载相关的共享库。
有几种设置可用于将共享库预加载到服务器中,如下

  • local_preload_libraries (string)
  • session_preload_libraries (string)
  • shared_preload_libraries (string)

1、local_preload_libraries (string)

  • 用户建立连接时加载,通常使用客户端上的 PGOPOPS 环境变量或使用 ALTER 角色 SET 设置此参数。
  • 任何用户都可以设置此选项,因此限定只能加载$libdir/plugins下面的so文件。可以显示的指定目录,如$libdir/plugins/passwordcheck;或者只指定库的名字,如passwordcheck。其会自动到$libdir/plugins/中搜索
postgres=> alter role test set local_preload_libraries=passwordcheck;
ALTER ROLE
postgres=> alter role test set local_preload_libraries='$libdir/plugins/passwordcheck';
ALTER ROLE

2、session_preload_libraries (string)

  • 用户建立连接时加载这个参数只允许超级用户修改
  • 能动态加载所有目录下面的so文件,如果未指定相对目录,自动到dynamic_library_path指定的目录中搜索so。

3、shared_preload_libraries (string)

  • 数据库启动时加载,配置shared_preload_libraries参数,必须重启数据库。
postgres=# alter system set shared_preload_libraries=pg_pathman, pg_stat_statements, passwordcheck;
ALTER SYSTEM

注意:

  • 在连接开始时加载一个或多个共享库,用逗号分隔列表。条目之间的空白会被忽略,如果要在名称中包含空格或逗号,库名需要加双引号。此参数只在服务器启动时生效。如果找不到指定的库,服务器无法启动。
  • 多个参数不要放在单引号中,如
alter system set shared_preload_libraries='pg_pathman,pg_stat_statements';
  • $libdir路径通过以下命令查看
[pg@pg ~]$ pg_config |grep LIBDIR
LIBDIR = /opt/postgres/lib
PKGLIBDIR = /opt/postgres/lib
[pg@pg ~]$

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
PostgreSQL 14 版本特性浅析
## 性能增强 ### 大量连接高并发优化 - 场景: SaaS场景,微服务架构下的中心库场景 - 业务特点:客户端多,在线用户多,数据库并发连接非常多 - 价值: 比连接池网络少1跳, 性能更好, 支持绑定变量等连接池会话模式不支持的全部功能 ### 索引增强 1. 缓解高频更新负载下的btree索引膨胀 - 场景: 数据频繁更新,如游戏、交易、共享出行、IoT等行业 - 价值: 减少膨胀
483 0
PostgreSQL导入备份sql文件
PostgreSQL导入备份sql文件
59 0
Mac OS安装PostgreSQL数据库
Mac OS安装PostgreSQL数据库
128 0
PostgreSQL教程(三):高级特性
本文档为PostgreSQL 9.6.0文档,本转载已得到原译者彭煜玮授权。 3.1. 简介 在之前的章节里我们已经涉及了使用SQL在PostgreSQL中存储和访问数据的基础知识。现在我们将要讨论SQL中一些更高级的特性,这些特性有助于简化管理和防止数据丢失或损坏。
2050 0
postgresql ssl功能
用openssl生成密钥对  openssl req -new -out server.csr -config openssl.cnf(conf中,Common Name 对应机器) openssl rsa -in privkey.
612 0
+关注
13
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载