Iva*_*ino 6 postgresql alter-table postgresql-9.6 debezium
我正在使用 Debezium 和 Postgres 数据库。该数据库包含多个带有 TOAST(超大属性存储技术)列的表。要处理未更改的 Postgres TOAST 列值,一种方法是将REPLICA IDENTITY表的 设为FULL。但是,我不确定运行是否ALTER TABLE mytable REPLICA IDENTITY FULL会导致数据库停机,或者这是否是一个安全操作。REPLICA IDENTITY的当前值为DEFAULT。
更改副本标识不会导致停机,但需要对ACCESS EXCLUSIVE表进行短暂锁定,如果您有涉及该表的长时间运行的事务,这可能会成为问题。
但是,我不明白这个练习的意义。这与TOAST无关;唯一的影响是,replicatedUPDATE和DELETE语句将包含条件中的所有列WHERE,而不仅仅是主键,这将增加 WAL 体积并且对性能不利。
REPLICA IDENTITY FULL对于没有主键的表来说主要是一个拐杖,无论如何都要避免。
| 归档时间: |
|
| 查看次数: |
18210 次 |
| 最近记录: |