zoukankan      html  css  js  c++  java
  • flink-cdc读取postgres报异常,没有发布表

    异常信息

    must be superuser to create FOR ALL TABLES publication

    必须是超级用户才能为所有发布表创建

    网上搜索了一天,都毫无头绪,后面搜索到了一个

    https://blog.csdn.net/Zznxz0601/article/details/116166269

     感觉像这个东西:

    设置如下:

    -- 设置发布开关
    update pg_publication set puballtables=true where pubname is not null;

    -- 创建发布dbz_publication,添加所有表到dbz_publication,包括以后新建的表
    CREATE PUBLICATION dbz_publication FOR ALL TABLES;

    -- 查询哪些表已经发布
    select * from pg_publication_tables;

    flink-cdc可以读取到数据啦

    =====================可能还会遇到其它问题或者异常===============================

    PGsql命令(备忘)

    -- pg新建用户
    CREATE USER ODPS_ETL WITH PASSWORD 'odpsETL@2021';
    -- 给用户复制流权限
    ALTER ROLE ODPS_ETL replication;
    -- 给用户数据库权限
    grant CONNECT ON DATABASE test to ODPS_ETL;
    -- 设置发布开关
    update pg_publication set puballtables=true where pubname is not null;
    -- 把所有表进行发布
    CREATE PUBLICATION dbz_publication FOR ALL TABLES;
    -- 查询哪些表已经发布
    select * from pg_publication_tables;
    -- 给表查询权限
    grant select on TABLE aa to ODPS_ETL;
    -- 给用户读写权限
    grant select,insert,update,delete ON ALL TABLES IN SCHEMA public to bd_test;
    -- 把当前库所有表查询权限赋给用户
    GRANT SELECT ON ALL TABLES IN SCHEMA public TO ODPS_ETL;
    -- 把当前库以后新建的表查询权限赋给用户
    alter default privileges in schema public grant select on tables to ODPS_ETL;
    -- 更改复制标识包含更新和删除之前值
    ALTER TABLE test0425 REPLICA IDENTITY FULL;
    -- 查看复制标识
    select relreplident from pg_class where relname='test0425';
    -- 查看solt使用情况
    SELECT * FROM pg_replication_slots;
    -- 删除solt
    SELECT pg_drop_replication_slot('zd_org_goods_solt');
    -- 查询用户当前连接数
    select usename, count(*) from pg_stat_activity group by usename order by count(*) desc;
    -- 设置用户最大连接数
    alter role odps_etl connection limit 200;
    

      


  • 相关阅读:
    生成淘宝在线旺旺页面入口
    IE6下的fixed实现
    HTML和XHTML的区别
    各大浏览器内核介绍(Rendering Engine)
    [导入]从架构设计到系统实施——基于.NET 3.0的全新企业应用系列课程(5):设计基于WPF的客户端.zip(6.98 MB)
    Java核心类库——java中的包装类
    Java语言基础——运算符
    Java核心类库——集合的迭代(遍历) Iterator接口
    Java语言基础——循环控制语句while for
    Java语言基础——方法
  • 原文地址:https://www.cnblogs.com/xiongmozhou/p/14718326.html
Copyright © 2011-2022 走看看