PostgreSQL 报错 because it does not have a replica identity and publishes updates

(update,delete触发,insert不触发)because it does not have a replica identity and publishes updates

Hint: To enable updating from the table, set REPLICA IDENTITY using ALTER TABLE

如果相关表涉及了逻辑复制,且对应表没有主键,则需要SET REPLICA IDENTITY(alter table xxx replica identity full),

集成任务的复制槽可以查询pg_replication_slots,发布可以查询pg_publication,发布的表可以查pg_publication_tables。

REPLICA IDENTITY:default,full,index indexname,nothing,通过pg_class的字段relreplident可以获取

添加发布表: alter publication pubname add table tablename; ---反之是drop,publication也支持disable和enable

相关推荐
胡八一7 分钟前
SQLite / LiteDB 单文件数据库为何“清空表后仍占几 GB”?——原理解析与空间回收实战
jvm·数据库·sqlite
2401_831501731 小时前
Linux之Zabbix分布式监控篇(二)
数据库·分布式·zabbix
秋林辉2 小时前
Jfinal+SQLite处理 sqlite数据库执行FIND_IN_SET报错
jvm·数据库·sqlite
巴里巴气6 小时前
MongoDB复杂查询 聚合框架
数据库·mongodb
scheduleTTe8 小时前
SQL增查
数据库·sql
浮生带你学Java9 小时前
2025Java面试题及答案整理( 2025年 7 月最新版,持续更新)
java·开发语言·数据库·面试·职场和发展
期待のcode9 小时前
图片上传实现
java·前端·javascript·数据库·servlet·交互
小毛驴8509 小时前
redis 如何持久化
数据库·redis·缓存
吗喽15434518810 小时前
用python实现自动化布尔盲注
数据库·python·自动化
hbrown10 小时前
Flask+LayUI开发手记(十一):选项集合的数据库扩展类
前端·数据库·python·layui