Welcome 微信登录

首页 / 数据库 / MySQL / 用XtraBackup实现MySQL的主从复制快速部署【主不锁表】

四种常用的mysql备份工具,各有缺点:0 tar
缺点:不支持热备份,要关闭mysqld服务器再进行备份。恢复时也必须关闭mysqld。
1 mysqldump
缺点:MySQL自己提供的mysqldump是把数据转换为SQL语句,这种方式的效率比较低,备份和还原的速度都很慢,而且在dump过程中为了保证数据一致性,任何数据插入和更新操作都会被挂起。
 2 ibbackup
缺点:付费。
3 LVM
缺点:这种方法是利用的逻辑卷的 镜像 功能对整个分区进行在线备份,这种备份数据量大,而且备份性能低下。4 Percona的XtraBackup。
XtraBackup开源,热备份,不锁表,支持innodb,
支持部分数据的备份(比如只备份某数据库中的某个表),
高性能,备份时对系统的负载影响较小。
通过tar4ibd 可直接生成压缩之后的备份文件,
支持增量备份!
有时间点的概念,可与mysql binary log配合。官网的详解~http://www.percona.com/doc/percona-xtrabackup/?id=percona-xtrabackup:start简明的步骤~步骤1. Master:/etc/my.cnf加上 datadir=/~~~~~~server-idlog-bin2. Slave:/etc/my.cnfserver-id=2datadir=/var/lib/mysql 
3. Master:在master数据库设置用来同步的slave用户权限 
GRANT REPLICATION SLAVE ON *.* TO "<slave_username>"@"<slave_ip>"  IDENTIFIED BY "<slave_password>"; 
4. Master:导出数据到slave
采用xtrabackup来备份mysql,好处是在master的锁表时间很短,在实际的生产环境也可以使用,并且xtrabackup会自动记录同步日志文件的位置。 
innobackupex-1.5.1 --stream=tar /tmp/ | ssh <slave_host> "mkdir /tmp/db; tar xfi - -C /tmp/db/"这个步骤会把master的数据包括表结构整个导出并压缩复制给slave,同时解压到slave的/tmp/db目录下。 
5. Slave:导入数据到slave
innobackupex-1.5.1 --apply-log /tmp/dbinnobackupex-1.5.1 --copy-back /tmp/dbchown -R mysql.mysql /var/lib/mysql/*6. Slave:开始同步数据 
查看/var/lib/mysql/xtrabackup_binlog_info,获得日志文件以及position。 
CHANGE MASTER TOMASTER_HOST="<master_host>",MASTER_USER="<slave_username>",MASTER_PASSWORD="<slave_password>",MASTER_LOG_FILE="<see xtrabackup_binlog_info>",MASTER_LOG_POS=<see xtrabackup_binlog_info>; 
START SLAVE;
  • 1
  • 2
  • 下一页
ORA-07391: sftopn: fopen error, unable to open text file.创建 Virtual Private Catalog(虚拟用户目录)(Oracle 11g)相关资讯      Xtrabackup  MySQL主从复制 
  • CentOS搭建MySQL主从复制,读写分  (今 07:44)
  • MySQL主从复制出现1205错误  (08月31日)
  • MySQL主从复制原理应用基础  (08月27日)
  • XtraBackup构建MySQL主从环境  (09月01日)
  • XtraBackup工具原理及安装  (08月31日)
  • Percona XtraBackup 压缩备份集  (08月23日)
本文评论 查看全部评论 (0)
表情: 姓名: 字数