shared_preload_libraries
扩展模块
shared_preload_libraries 是 PostgreSQL 中的配置参数,用于指定在数据库服务器启动过程中应加载到内存中的共享库列表。 这些共享库可以包含数据库服务器的附加特性和功能,这些特性和功能在核心 PostgreSQL 代码中不可用。
可以使用 shared_preload_libraries 加载的一些流行扩展包括:
pg_stat_statements:一个模块,提供有关服务器执行的SQL语句的统计信息,例如执行时间和频率。
pg_repack:一个对表进行在线重组的工具,可以帮助回收磁盘空间和提高性能。
pg_cron:一个作业调度程序,允许用户安排数据库任务以指定的时间间隔运行。
pgcrypto:一个在 PostgreSQL 中提供加密功能的模块,例如散列和加密。
当您将扩展添加到 shared_preload_libraries 列表时,扩展的代码将在 PostgreSQL 服务器启动时加载到内存中,并且其功能将在服务器的整个生命周期内可用。 这对于提供系统范围的功能或通过缓存常用数据来优化性能很有用。
show shared_preload_libraries ;
\dx // dx元命令查看当前数据库中已安装的扩展模块
show shared_preload_libraries ;
pg_stat_statements 是一个内置扩展,用于收集 SQL 语句执行的统计信息。 它记录了执行每条语句所花费的总时间,以及已执行的次数和平均执行时间。 此信息可用于识别缓慢或低效的查询,并优化数据库的性能。 要使用 pg_stat_statements,您需要在您的 postgresql.conf 文件中启用它,然后执行 CREATE EXTENSION pg_stat_statements; 命令在你的数据库中。
decoderbufs 是一个第三方扩展,提供了一种解码和分析 PostgreSQL 事务日志内容的方法。 它可用于提取有关对数据库所做更改的信息,例如插入、更新或删除了哪些行。 此信息可用于审计目的,或用于在不同 PostgreSQL 数据库之间复制数据。 要使用decoderbufs,需要从可信来源下载安装,然后执行CREATE EXTENSION decoderbufs; 命令在你的数据库中。