zoukankan      html  css  js  c++  java
  • wal2json docker 试用

    基于官方的release 构建了一个docker 镜像,以下是测试使用

    环境准备

    • docker-compose 文件
    version: "3"
    services: 
       mypg:
         image: dalongrong/wal2json:1.0
         ports: 
         - "5432:5432"
         environment: 
         - "POSTGRES_PASSWORD:dalong"
    • 启动
    docker-compose up -d

    测试

    • 创建slot 以及使用插件
    pg_recvlogical -h 127.0.0.1 -U postgres -d postgres --slot test_slot --create-slot -P wal2json
    • 监听变动
    pg_recvlogical -h 127.0.0.1 -U postgres -d postgres --slot test_slot --start -o pretty-print=1 -f -
    • 添加数据查看变动
      demo sql
    CREATE TABLE table_with_pk (a SERIAL, b VARCHAR(30), c TIMESTAMP NOT NULL, PRIMARY KEY(a, c));
    CREATE TABLE table_without_pk (a SERIAL, b NUMERIC(5,2), c TEXT);
    BEGIN;
    INSERT INTO table_with_pk (b, c) VALUES('Backup and Restore', now());
    INSERT INTO table_with_pk (b, c) VALUES('Tuning', now());
    INSERT INTO table_with_pk (b, c) VALUES('Replication', now());
    DELETE FROM table_with_pk WHERE a < 3;
    INSERT INTO table_without_pk (b, c) VALUES(2.34, 'Tapir');
    -- it is not added to stream because there isn't a pk or a replica identity
    UPDATE table_without_pk SET c = 'Anta' WHERE c = 'Tapir';
    COMMIT;
     

    添加数据

    psql -At -f example1.sql -h 127.0.0.1 -U postgres -d postgres
    • 监听效果

    说明

    wal2json 功能强大,同时提供的配置参数也是比较多的,netflix即将开源的dblog 对于pg 的处理也是基于此扩展,详细的一些使用
    可以参考github 仓库代码

    参考资料

    https://github.com/eulerto/wal2json
    https://github.com/rongfengliang/wal2json-docker
    https://github.com/rongfengliang/wal2json-docker-demo

  • 相关阅读:
    SDN第4次上机作业
    SDN第三次作业
    SDN第三次上机作业
    SDN第二次上机作业
    SND第二次作业
    【Beta Scrum】冲刺!4/5
    【Beta Scrum】冲刺! 3/5
    【Beta Scrum】冲刺! 2/5
    【Beta Scrum】冲刺! 1/5
    SDN第二次上机作业
  • 原文地址:https://www.cnblogs.com/rongfengliang/p/12059609.html
Copyright © 2011-2022 走看看