MySQL/MariaDB复制解决方案

MySQL/MariaDB复制解决方案,mysql,replication,mariadb,Mysql,Replication,Mariadb,我正在解决MySQL主从复制问题。情况如下: 我有一个服务器a和一个服务器B。服务器a运行应用程序,将数据生成表TA1、TA2和TA3。我希望将内部联接选择定义的TA1、TA2和TA3的特定子集复制到一个表TB1中,并将其复制到专用于报告引擎的服务器B上。在服务器A上创建数据后,必须尽快将数据复制到服务器B上。我现在可以像伐木工人一样,将表TAx从服务器A复制到服务器B上的TBx,然后在服务器B上创建一个视图以过滤掉不必要的行 哦,我真讨厌这个解决方案。我想在服务器A端进行行过滤,并只复制子集。

我正在解决MySQL主从复制问题。情况如下:

我有一个服务器a和一个服务器B。服务器a运行应用程序,将数据生成表TA1、TA2和TA3。我希望将内部联接选择定义的TA1、TA2和TA3的特定子集复制到一个表TB1中,并将其复制到专用于报告引擎的服务器B上。在服务器A上创建数据后,必须尽快将数据复制到服务器B上。我现在可以像伐木工人一样,将表TAx从服务器A复制到服务器B上的TBx,然后在服务器B上创建一个视图以过滤掉不必要的行

哦,我真讨厌这个解决方案。我想在服务器A端进行行过滤,并只复制子集。你有没有想过如何巧妙地设置它


我希望避免调度程序每隔一分钟左右运行一次查询,以便在复制之前在服务器A上创建表,我希望避免使用触发器筛选数据,我希望使复制的数据尽可能在线,..

当使用基于语句的复制时,您可以简单地在从机端的表上使用触发器来过滤掉不需要的行,但行更改仍将写入binlog复制文件,并且仅在从机端过滤掉

从MariaDB 10.1(不是GA版本)开始,您还可以使用基于行的复制,并且仍然可以使用从属端触发器进行过滤:

或者,您可以在主服务器上已经有TAx和TBx表,TAx上的触发器进行过滤,只将所需的更改复制到TBx卷影表,然后有复制筛选器,只将TBx表复制到从属服务器