是否可以使用从服务器A我们认为是主服务器到服务器B生成的binlog文件设置MYSQL复制

问题描述

我们正在从Magento社区迁移到 Magento云,这是我们的一个项目,我们需要访问数据库以用于我们自定义开发的CRM。

但是不幸的是,magento云不支持数据库复制,并且已经启用了二进制日志,并且不支持创建复制用户和服务器ID设置。二进制日志文件可以定期同步到我们的CRM服务器。

现在,我们想知道是否可以使用binlog文件来复制数据库,或者是否有任何解决方法

我们尝试使用隧道设置,但是使用隧道设置时查询执行时间会更长,这将严重影响我们的CRM性能

我们还需要再次确认是否有其他可能性可以尝试访问CRM中的Magento Cloud DB,而不会造成性能延迟。

预先感谢您的建议。

解决方法

是的,有可能,但是在您描述的设置中可能有点麻烦。您可以将二进制日志重播为中继日志。请查看本文以了解更多详细信息: https://lefred.be/content/howto-make-mysql-point-in-time-recovery-faster/

具体来说,这些部分是相关的(您需要对其进行适当的编辑):

[root@mysql1 mysql]# for i in $(ls /tmp/binlogs/*.0*) 
do  
  ext=$(echo $i | cut -d'.' -f2); 
  cp $i mysql1-relay-bin.$ext; 
done

[root@mysql1 mysql]# ls ./mysql1-relay-bin.0* >mysql1-relay-bin.index