我有2个(th和ct)服务器,每个服务器与它自己的数据库完全分开我希望用ct同步表(et) 我希望如果在表中完成新的插入,触发器将触发与ct服务器的ssh连接并插入新行我认为脚本应该类似于以下内容但我无法弄清楚语法
DROP TRIGGER IF EXISTS et-sync
CREATE TRIGGER et-sync AFTER INSERT ON th.et
FOR EACH ROW BEGIN
ssh user@11.11.2.11 "mysql -uroot -ppassword -e \"INSERT db_testplus.user SET t = NEW.t;""
END;
我应该使用它还是只使用Percona Toolkit for MySQL (pt-table-sync)因为我不认为添加一个控制数据库同步的工具是值得的(增加复杂性)
我知道添加副本是最好的解决方案,但考虑到当前的系统设计,我想将ct数据库的重新设计延迟一段时间,因为它需要一段时间才能从头开始,它是一个重要的部分为业务
任何建议?
答案 0 :(得分:0)
出于安全原因,MySQL不允许从内部启动进程。
通常的另一种方法是让cron
作业来协调行动,根据需要进入数据库进行沟通和协调。