您的位置:首页 > 数据库 > SQL

mysql热备份工具mysqlhotcopy

2011-09-05 05:15 531 查看

http://www.auu.name/777/index.html

mysql 热备

在运维中需定期备份mysql,为崩溃后的恢复数据做准备。一般分为冷备和热备,冷备就是停掉mysql服务,直接cp文件,但是在生产环境中,很
少有机会这样,一般都是在mysql提供服务的时候就进行备份,因此这牵扯到数据一致性的问题。所以,在MyISAM存储引擎下,我们的思路就是:锁表
–>备份–>解锁

# 进入mysql环境 锁表
root@mysql : test > flush tables with read lock;
# 在系统环境下 备份
cp -R test /tmp/backup/test_back
# 进入mysql环境 解锁
root@mysql : test > unlock tables;


mysqlhotcopy 热备工具

当然也可通过mysql自带的工具 mysqlhotcopy
解决,事实上mysqlhotcopy是个perl程序,提供MyISAM下的锁表备份解锁操做。因为是perl脚本,所以需要机器上有PERL-DBD
模块,不然会报错: Can’t locate DBI.pm in @INC ,安装过程很简单,在这里: perl-DBI连接mysql

mysqlhotcopy也很简单,参数可用 –help 查看

# 备份test库为新的test_tmp库,与test同级目录
mysqlhotcopy  --user=root  --password=root   test   test_tmp

# 备份test库 到 /tmp/ 目录下
mysqlhotcopy  --user=root  --password=root   test   /tmp/

# --checkpoint dbinfo.checkpoint 这个是指定存放操作记录的数据库/表
# --addtodest 增量备份,新的备份自动覆盖掉原来的
mysqlhotcopy  --user=root  --password=root  --checkpoint=dbinfo.checkpoint  --addtodest  test  /tmp/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: