首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >不能在postgres 12码头图像中启用wal2json

不能在postgres 12码头图像中启用wal2json
EN

Database Administration用户
提问于 2020-05-10 14:12:37
回答 1查看 1.4K关注 0票数 2

我试图在从wal2json映像扩展的图像中启用postgres:12。但我发现了一个错误:

代码语言:javascript
运行
复制
postgres=# create extension wal2json;
ERROR:  could not open extension control file "/usr/share/postgresql/12/extension/wal2json.control": No such file or directory

这可能是因为wal2json在pg_available_extensions中也缺失了:

代码语言:javascript
运行
复制
postgres=# select * from pg_available_extensions where name ilike '%%json%%';
 name | default_version | installed_version | comment 
------+-----------------+-------------------+---------
(0 rows)

Dockerfile:

代码语言:javascript
运行
复制
FROM postgres:12
RUN apt update && apt install -y postgresql-12-wal2json postgresql-contrib

postgres服务器日志:

代码语言:javascript
运行
复制
db_1  | 2020-05-10 13:53:04.611 GMT [1] LOG:  database system is ready to accept connections
db_1  | 2020-05-10 13:54:03.587 GMT [83] ERROR:  could not open extension control file "/usr/share/postgresql/12/extension/wal2json.control": No such file or directory
db_1  | 2020-05-10 13:54:03.587 GMT [83] STATEMENT:  create extension wal2json;

postgresql.conf文件已调整为

代码语言:javascript
运行
复制
wal_level = logical     
shared_preload_libraries = 'wal2json'

任何帮助,使这项工作,将不胜感激。

EN

回答 1

Database Administration用户

发布于 2022-12-22 16:30:04

2年后,在PostgreSQL14上使用wal2json。安装后用debezium码头映像:https://hub.docker.com/r/debezium/postgres/tags

这基本上就是你所做的,https://github.com/debezium/container-images/blob/023a7da62f802051b15e3991e2a28f8d705e8d40/postgres/14/Dockerfile

我可以通过一个repl插槽使用wal2json扩展

代码语言:javascript
运行
复制
SELECT * FROM pg_create_logical_replication_slot('testing', 'wal2json')

,而不使用CREATE EXTENSION

激活扩展。

脱贝兹吉特上的一个用户对此感到震惊。我不知道它是否应该是这样工作的,但显然是这样的。

票数 0
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/266869

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档