如果我永久删除其唯一的副本,我是否需要在主要内容上执行任何操作?我担心WAL文件会填满磁盘。
我想从单节点复制设置中删除唯一的副本:
P -> R
我想删除R.
您的担忧绝对正确。副本在主服务器上创建replication slot,其中存储了restart_lsn
。根据文档,restart_lsn
是:
最老的WAL的地址(LSN)仍然可能是此插槽的消费者所需要的,因此在检查点期间不会自动删除。
如果副本不在此复制槽中前进LSN,则主要将保持所有WAL段从此位置开始并忽略max_wal_size
限制。
如果要删除副本并启用WAL旋转,则还必须删除复制槽:
postgres=# SELECT * FROM pg_replication_slots;
postgres=# SELECT pg_drop_replication_slot('replication_slot_name');
有一个patch on Postgres Commitfest,它引入了新的GUC来限制复制槽所持有的WAL数量。然而,补丁是长寿的,但仍然没有承诺。