在我的 DEV 服务器上,我测试了逻辑复制,然后返回到流式传输。
现在wal_level = replica我有两个奴隶:
pid |state |application_name |client_addr|write_lag |flush_lag |replay_lag |sync_priority|sync_state|
-----|----------|--------------------|-----------|---------------|---------------|---------------|-------------|----------|
12811|streaming |db-slave1 |*.*.*.* |00:00:00.000569|00:00:00.001914|00:00:00.001932| 0|async |
25978|streaming |db-slave2 |*.*.*.* |00:00:00.000568|00:00:00.001913|00:00:00.001931| 0|async |
现在我创建了新表并插入了一条记录。例如:
create table test_delete (
id int
);
insert into test_delete values (1);
delete from test_delete where id = 1;
该表已创建并复制到两个从属服务器,但删除查询失败并出现错误:
SQL 错误 [55000]:错误:无法从表“test_delete”中删除,因为它没有副本标识并发布删除提示:要启用从表中删除,请使用 ALTER TABLE 设置 REPLICA IDENTITY。
所以,在切换逻辑复制和从表中删除的能力之前,我需要帮助来恢复状态