Debezium:postgresql ddl操作审计同步

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012551524/article/details/85484692

1、Debezium目前魔仍只能同步到dml操作,如果做细粒度的ddl操作需要自己定制化操作

2、Debezium-postgresql参考:

https://blog.csdn.net/u012551524/article/details/82798066


计划:以触发器的形式对postgresql ddl做审计同步,将ddl操作审计记录到表,对表进行同步,完成ddl同步

create extension hstore;

create or replace function ef_alter() returns event_trigger as $$

declare

rec hstore;

begin

select hstore(pg_stat_activity.*) into rec from pg_stat_activity where pid=pg_backend_pid();

insert into aud_alter (ctx) values (rec);

扫描二维码关注公众号,回复: 5511589 查看本文章

end;

$$ language plpgsql strict;

CREATE FUNCTION

testdb=# create event trigger e_alter on ddl_command_end when tag in ('ALTER TABLE') execute procedure ef_alter();

CREATE EVENT TRIGGER

testdb=# create table aud_alter(id serial primary key, crt_time timestamp default now(), ctx hstore);

CREATE TABLE

testdb=# create table test(id int);

CREATE TABLE

testdb=# alter table test alter column id type int8;

ALTER TABLE

testdb=# select * from aud_alter;

猜你喜欢

转载自blog.csdn.net/u012551524/article/details/85484692
今日推荐