MySQL内核月报 2014.09-TokuDB· HA方案·TokuDB热备-阿里云开发者社区

开发者社区> 阿里云数据库> 正文

MySQL内核月报 2014.09-TokuDB· HA方案·TokuDB热备

简介:

TokuDB企业版提供热备功能(与社区版唯一的区别)。

该功能以plugin方式提供,当backup plugin加载后,它会拦截所有的文件操作(比如文件读写/目录操作等),从而实现在备份的过程中增量同步,具体原理请看:

http://www.tokutek.com/2013/09/tokudb-hot-backup-part-1/ 
http://www.tokutek.com/2013/09/tokudb-hot-backup-part-2/ 

社区版如何实现热备呢?

官方推荐的方式是mylvmbackup,不过可能会有一些"坑"。

Percona的Vadim同学写过一篇TokuDB tips,介绍了Percona在使用mylvmbackup热备TokuDB中遇到的"坑"及解决方法:

不能只备份TokuDB自身的数据以及日志文件,还要备份最新的binlog,否则启动的时候可能就"跪"了!

还有一个比较geek的方式,直接基于TokuDB自身的机制,轻松的热备出一个备库。

上攻略:


"大杀器"就是TOKUDB_CHECKPOINT_LOCK,它的作用是允许拿到checkpoint锁,此时TokuDB的checkpoint会一直block到该锁释放(执行前要把tokudb_checkpoint_on_flush_logs关掉),目的是防止拷贝TokuDB数据文件的过程中做sharp checkpoint(注意:由于不做checkpoint,TokuDB的日志文件会逐渐增多),从而导致数据文件内部不一致(已拷贝的文件被修改)。

整个热备过程中,只有步骤4是阻塞写的,但耗时较短。

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

分享:
阿里云数据库
使用钉钉扫一扫加入圈子
+ 订阅

帮用户承担一切数据库风险,给您何止是安心!

官方博客
链接