Mysql双机热备

来源:互联网 发布:java小游戏视频教程 编辑:程序博客网 时间:2024/05/01 12:06

Xtrabackup 是percona公司(mysqlperformanceblog)的开源项目,目的是实现类似innodb官方的热备份工具InnoDB Hot Backup的功能,可以帮助我们对MySQL InnoDB类型的数据库表进行在线热备份。

Xtrabackup中包含两个工具:
* xtrabackup - 用于热备份innodb, xtradb表的工具,不能备份其他表。
* innobackupex - 对xtrabackup封装的perl脚本,提供了myisam表备份的能力。

Xtrabackup可以做什么
* 在线(热)备份整个库的InnoDB, XtraDB表
* 在xtrabackup的上一次整库备份基础上做增量备份(innodb only)
* 以流的形式产生备份,可以直接保存到远程机器上(本机硬盘空间不足时很有用)

今天,Xtrabackup发布了1.0正式版本,此次发布不仅仅包括了Linux平台的二进制版本和源代码版本,还提供Windows平台的安装版本,当前仅仅支持32bit的Windows操作系统。点击这里下载相应的版本。

使用Xtrabackup对MySQL进行热备份是非常简单的,例如我们使用Xtrabackup自带的innobackupex脚本对整个数据库进行热备份,将数据库拷贝到本地的/db_backup目录: 

      innobackupex --user=root --password=password --defaults-file=/etc/my.cnf /db_backup  



在备份的同时,将备份文件打包:

      innobackupex --user=root --password=password --defaults-file=/etc/my.cnf --stream=tar /db_backup | gzip >  /db_backup/db.tar.gz  



将备份文件直接通过网络备份到一台远程服务器:

      innobackupex --user=root --password=password --defaults-file=/etc/my.cnf --stream=tar /db_backup | ssh dbbackup@remote_host cat > backup.tar  



直接通过ssh端口,将数据库热备份到一台远程的服务器上面去。

总之Xtrabackup为MySQL带来了企业级的数据备份机制,让MySQL在大容量存储方面扫除了后顾之忧。

原创粉丝点击