admin管理员组

文章数量:1405125

Code

do $$BEGIN
perform pg_create_logical_replication_slot('test', 'pgoutput', false);
END$$ ;

create publication Jalgi_pub for all tables;

select * from pg_logical_slot_peek_binary_changes('test', null, null,'proto_version', '4', 'publication_names', 'Jalgi_pub' )

returns replication commands as binary content in Data column. How to convert this data to sql commands like insert, update, delete ?

Using C#, npgsql, ef core and ASP.NET MVC. Can some npgsql method uses for this? Or is it possible to create replication which returns this data as replication messages? Or can binry replcaton used

Code

do $$BEGIN
perform pg_create_logical_replication_slot('test', 'pgoutput', false);
END$$ ;

create publication Jalgi_pub for all tables;

select * from pg_logical_slot_peek_binary_changes('test', null, null,'proto_version', '4', 'publication_names', 'Jalgi_pub' )

returns replication commands as binary content in Data column. How to convert this data to sql commands like insert, update, delete ?

Using C#, npgsql, ef core and ASP.NET MVC. Can some npgsql method uses for this? Or is it possible to create replication which returns this data as replication messages? Or can binry replcaton used

Share Improve this question asked Mar 22 at 20:53 AndrusAndrus 28k67 gold badges215 silver badges396 bronze badges
Add a comment  | 

1 Answer 1

Reset to default 0

You have to use plugins which does the task of converting wal events to sql queries.One such plugin is decoder_raw
https://github/michaelpq/pg_plugins/blob/main/decoder_raw/decoder_raw.c
Install it and create slot with this plugin.

本文标签: postgresqlHow to parse logical replication commandsStack Overflow