我有 3 个节点,1 个是主机(称为“A”),2 个是指主机的来宾(称为“B”和“C”)。
有一天,“A”通过列匹配路由器向“B”发送数据,不幸的是“A”错误。'A' 应该向'C' 发送数据,但数据已记录在'B' 和'C' 中(重新发送到'C' 之后)。
如何删除'B'中的数据?或者另一个问题是如何通过列匹配路由器进行双向同步?最后,我想同步主机和目标来宾,即使我修复了行,所以在错误的节点中没有“不相关的列”。
谢谢
我有 3 个节点,1 个是主机(称为“A”),2 个是指主机的来宾(称为“B”和“C”)。
有一天,“A”通过列匹配路由器向“B”发送数据,不幸的是“A”错误。'A' 应该向'C' 发送数据,但数据已记录在'B' 和'C' 中(重新发送到'C' 之后)。
如何删除'B'中的数据?或者另一个问题是如何通过列匹配路由器进行双向同步?最后,我想同步主机和目标来宾,即使我修复了行,所以在错误的节点中没有“不相关的列”。
谢谢
使用子选择路由器:
在这些情况下可以使用“子选择”路由器。'subselect' 配置了一个路由表达式,它是一个 SQL 选择语句,它返回需要路由到的节点 ID 的结果集。列标记可以在 SQL 表达式中使用,并将替换为行列数据。
利用:
symadmin send-sql --node B mytable "delete from mytable where id = 257"
删除节点 B 上错误发送的数据。