PolarDB的一键迁移功能是否支持跨地域迁移?如果不支持,能否将迁移目标的PolarDB集群设置为只读状态,并使用DTS同步数据?这种情况下,DTS是否能向只读集群写入数据?
PolarDB的一键迁移功能本身可能不支持跨地域迁移。因为云企业网(CEN)主要用于实现不同地域之间的网络互通,允许在阿里云的不同地域(Region)之间建立高速、稳定的网络连接。但是,当使用云企业网进行跨地域迁移时,实际上是在创建一个新的网络环境,使得原本位于不同地域的PolarDB实例能够相互通信。在此过程中,内网地址通常不会直接“带过来”,这意味着资源的内网地址在迁移过程中可能会发生变化。
至于你提到的自建两条DTS链路进行跨地域迁移的方案,理论上是可以实现的。在这个方案中,你可以将其中一个方向的PolarDB集群设为只读,以确保数据的一致性。只读实例的存储节点通过增加Learner副本的方式来保证物理资源隔离,提供了分离的特性,同时能够基于全局时钟来确保只读查询的强一致性。
关于DTS本身是否能写数据,DTS(Data Transmission Service)主要是用于数据同步的服务,它本身并不直接写数据到目标数据库。DTS负责从源数据库读取数据,并将这些数据同步到目标数据库。因此,即使你将PolarDB集群设为只读,DTS仍然可以从该集群读取数据,并将其同步到另一个地域的PolarDB集群中。
至于外部通过代理写数据的问题,这主要取决于你的代理配置和权限设置。如果代理被配置为只允许读操作,那么它就不能执行写操作。反之,如果代理被配置为允许写操作,并且具有相应的权限,那么它就可以执行写操作。
跨地域不能使用一键迁移。如果走自建dts方式,自己设置只读的话也会导致dts写不了数据的。自建dts进行一键迁移的话,建议不设置只读,走停机切换。此回答整理自钉群“PolarDB专家面对面 - 自建/RDS MySQL迁移PolarDB MySQL/大版本升级”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
阿里云关系型数据库主要有以下几种:RDS MySQL版、RDS PostgreSQL 版、RDS SQL Server 版、PolarDB MySQL版、PolarDB PostgreSQL 版、PolarDB分布式版 。