notify+rsync实时备份,notify+rsync同步备份mysql数据模拟,inotify功能和实现原理,rsync文件实时同步

简介

Inotify 是一种强大的、细粒度的、异步的文件系统事件监控机制,linux内核从2.6.13起,加入了Inotify支持,通过Inotify可以监控文件系统中添加、删除,修改、移动等各种细微事件,利用这个内核接口,第三方软件就可以监控文件系统下文件的各种变化情况,而inotify-tools就是这样的一个第三方软件
rsync具有安全性高、备份迅速、支持增量备份等优点,通过rsync可以解决对实时性要求不高的数据备份需求,但是rsync不能实时的去监测、同步数据

原理

Inotify只需要要按照部署在同步的客户端,当监控的文件有变化触动 rsync脚本来同步

准备两个CentOS 7机器
192.168.26.128
192.168.26.129

1、安装EPEL
yum -y install epel-release
2、安装inotify和rsync服务
yum -y install inotify-tools rsync
3、修改rsync的配置文件
vim /etc/rsyncd.conf

内容如下:

	uid=root
	gid=root
	use chroot = no
	max connections = 10
	strict modes = yes
	pid file = /var/run/rsyncd.pid
	lock file = /var/run/rsyncd.lock
	log file = /var/log/rsyncd.log
	[mysqldata]
	path = /data/mysqldata
	comment = mysql data
	ignore errors
	read only = no
	write only = no
	hosts allow = 192.168.26.129
	list = false
	auth users = rsync_user
	secrets file = /etc/rsync.password
4、创建目录
mkdir -p /data/mysqldata
5、建立rsync用户名和密码文件,加权限
echo "rsync_user:rsync_user_pwd" > /etc/rsync.password
chmod -R 600 /etc/rsync.password
6、启动服务,验证端口
rsync --daemon
netstat -nlupt|grep 873
7、安装EPEL
yum -y install epel-release
8、B服务器安装inotify和rsync服务
yum -y install inotify-tools rsync
9、设置客户端密码文件,修改权限
echo "rsync_user_pwd" > /etc/rsync.password
chmod -R 600 /etc/rsync.password
10、编写脚本监控
vim jianko.sh

内容如下:

	#!/bin/bash
	ip=192.168.112.153
	src=/data/mysqldata_src/
	dst=mysqldata
	user=rsync_user
	/usr/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f' -e 			modify,delete,create,attrib ${src} \
	    | while read file
	do
	rsync -vzrtopg --delete --progress $src $user@$ip::$dst --password-file=/etc/rsync.password > /dev/null && echo "$src was rsyncd"
	done

注意点:第6行的路径,yum安装的是/usr/bin/inotifywait

源码安装的是/usr/local/bin/inotifywait

还有就是src的路径需要创建!!!

路径验证没有如下文件证明不对

ll  /usr/bin/inotifywait
11 、创建目录
	mkdir -p /data/mysqldata_src
12、执行脚本
sh jiankong.sh
13、进入相应的目录下创建文件
cd /data/mysqldata_src
touch a.txt
14、到A服务器上验证
cd /data/mysqkldata
ls

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值