MySQL同步数据到本地自建数据库-阿里云开发者社区

开发者社区> 数据库> 正文
登录阅读全文

MySQL同步数据到本地自建数据库

简介: 对业务系统来说,数据可靠性非常重要。如何通过简单的配置,实现适当有效的备份机制并具备快速恢复能力是本最佳实践所要解决的主要问题。阿里云数据库RDS for mysql提供多种方式可以让用户同步数据到本地自建数据库。本文将着重为大家介绍RDS MySQL同步数据到本地自建库的方法。
对业务系统来说,数据可靠性非常重要。如何通过简单的配置,实现适当有效的备份机制并具备快速恢复能力是本最佳实践所要解决的主要问题。阿里云数据库RDS for mysql提供多种方式可以让用户同步数据到本地自建数据库。本文将着重为大家介绍RDS MySQL恢复数据到本地自建库的方法。
1. 如果RDS上的数据没有发生增删改的操作的话,可以生成物理备份或者逻辑备份,然后将物理备份和逻辑备份通过Xtrabackup或者mysqldump将数据导入到自建库。
2. 如果在物理备份已经生成后对于数据库仍然有增删改的操作的话,则需要您在恢复物理备份后还需要追加后续的binlog文件,可以通过API/控制台获取binlog文件去追加增量数据。
这里有一个非常需要注意的一点是在解压出来物理备份文件后除了数据和索引文件外还有得到如下图中的一些文件。
 22ce4a9ee4d7b825c7d633b4cd5a4d5b39451e42
由于在物理备份上应用binlog是需要记录binlog的pos点的,所有的RDS都是采用主备架构保证高可用性的,为保证主库正常对外提供服务,备份操作是在从库上执行的,但是生成出来的binlog文件却既有可能是主库或者从库上生成(两个binlog文件的pos点是不一致的)。提供给用户的也可能是这里面的任意一份,因此在物理备份文件中给用户提供了两个binlog文件的pos点,如下图:
 5f2e9410dc4f15cd653222c20078bcc9b3680966
用户在应用binlog的时候需要两个pos点都测试一下,哪个pos点可以在binlog中找到从这个pos点开始应用binlog。 
3. 用户想要将RDS上的增量数据同步在自建库的binlog上可以使用DTS的数据订阅功能,可以通过SDK消费增量数据即可再自己应用该数据,操作界面如下图。在下面的例子中用户就可以消费2015-9-18 16:38:11到2015-09-19 17:37:44的增量数据。
 fc8c2d7bd19b67dd11c4ff717b3d3e57d6699c67

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享: