rsync+inotify同步备份MYSQL数据
rsync具有安全性高、备份迅速、支持增量备份等优点,通过rsync可以解决对实时性要求不高的数据备份需求,但是rsync不能实时的去监测、同步数据。inotify 是一种强大的、细粒度的、异步的文件系统事件监控机制,通过inotify可以监控文件系统中添加、删除,修改、移动等各种细微事件。
实验环境:备份端192.168.1.123(rsync server)
备份源192.168.124(rsync client inotify mysql)
实验原理:利用inotify监控mysql数据库数据目录:/usr/local/mysql/data
,然后利用rsync将改变的数据同步到备份端的/var/mysqldata
一.备份端服务的配置
1)确认rsync是否安装,大多数linux发行版默认安装rsync
2)手动创建rsync的配置文件
3)建立rsync用户名和密码文件,并为/etc/rsync.password授权为600
4)启动rsync服务
至此备份端服务配置完成
二.备份源配置
1)设置rsync客户端密码文件,将密码文件的权限设置成600
客户端只需要设置rsync同步密码即可,不用重设用户名
2)安装inotify
3)编写运行监控脚本。为了保证/usr/local/mysql/data目录自动同步,安装完成inotify后,写一个inotify脚本。
三.测试效果
1)运行编写的inotify.sh脚本
同时在mysql插入数据
可以看到脚本已经生效
2)查看备份端的/var/mysqldata,可以看到同步的数据