iis服务器助手广告广告
返回顶部
首页 > 资讯 > 操作系统 >Linux inotify实时备份实现方法详解
  • 896
分享到

Linux inotify实时备份实现方法详解

Linuxinotify实时备份 2022-06-03 14:06:28 896人浏览 安东尼
摘要

实时复制是企业数据备份最重要的方式,主要用于用户提交的数据的备份,对于用户提交到服务器上的普通文件(图片、压缩包、视频、文档等),可采用 inotify/sersync+rsync实时备份方式;对于数据文件还有较复杂

实时复制是企业数据备份最重要的方式,主要用于用户提交的数据的备份,对于用户提交到服务器上的普通文件(图片、压缩包、视频、文档等),可采用 inotify/sersync+rsync实时备份方式;对于数据文件还有较复杂的分布式存储工具自身可以实现将数据同时备份成多份,例如: FastDFS、 GlusterFS等;对于提交到数据库中的数据,可使用数据库的主从复制(例如: Mysqloracle)方式备份,这是软件自带的实时复制备份方式。有的企业会采用更多思路实现数据同时变为多份,例如:程序业务逻辑在数据提交时,同时提交到两个服务器。

模拟实时复制的部署准备

实时复制软件介绍

常用软件:inotify-tools、sersync(推荐)

实时复制inotify机制介绍

linux内核从2.6.13起加入了Inotify支持,它是一种异步的系统事件监控机制,通过inotify可以监控文件系统中添加、删除、修改、移动等各种事件,利用这个内核接口,第三方软件(如inotify-tools、sersync)可以监控文件系统下各文件的变化情况,进而做出实时响应。

注:sersync软件是在inotify基础上进行开发的,功能更加强大,支持配置文件配置,定时重试复制,过滤机制,提供接口做CDN数据更新,支持多线程操作。

优缺点

inotify优点:监控文件系统事件变化,通过复制工具实现实时数据复制。支持多线程实时复制。

inotify缺点:实测并发如果大于200个文件(10-100k),复制会有延迟。

解决思路:前台争取时间,如我们注册账号或上传数据点击提交后,页面显示几秒后返回原页面。

inotify+rsync项目实践

1.确保rsync服务可用,可在nfs01服务器上推拉数据到backup服务器上。

2.检查系统支持情况

①内核版本必须大于2.6.13 ②必须有以下三个文件

3.测试inotify-tools软件

[root@nfs01 ~]# yum install inotify-tools -y

开两个窗口测试:

编写脚本:

注:打开另一nfs01窗口,创建、修改、删除文件,并在backup服务器中查看是否实时同步。

4.测试sersync软件

上传软件包

解压

tar -xf sersync2.5.4_64bit_binary_stable_final.tar.gz -C /application/sersync/

sersync的配置文件是一个xml文件,先备份一下 cp confxml.xml{,.ori}

修改配置文件(输入 :set nu 可显示行号):

执行

因为sersync不是yum安装的,无法使用systemctl命令开启、关闭、自启

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

--结束END--

本文标题: Linux inotify实时备份实现方法详解

本文链接: https://www.lsjlt.com/news/11490.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • linux实现定时备份mysql数据库的方法
    小编给大家分享一下linux实现定时备份mysql数据库的方法,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!1、查看磁盘空间情况:[root@localhost backup]# df -h ...
    99+
    2024-04-02
  • MySQL数据库定时备份的实现方法
    1. 创建shell脚本 vim backupdb.sh 创建脚本内容如下: #!/bin/sh db_user="root" db_passwd="123456" db_name="use...
    99+
    2024-04-02
  • mysql实现定时备份
    编写脚本xxx.bat @echo offecho 设置MySql数据库的连接信息set host=127.0.0.1set port=3306set user=rootset pass=123456...
    99+
    2023-09-01
    mysql 数据库 php
  • DockerMySQL每天定时自动备份的实现方法
    目录一:备份二:还原三:定时任务docker MySQL数据库的备份与还原,以及每天定时自动备份 一:备份 查看docker mysql ubuntu@ubuntu:~$ sudo ...
    99+
    2023-01-05
    Docker MySQL定时自动备份 Docker MySQL定时备份
  • PHP实现数据库备份定时任务的方法
    随着互联网的快速发展,网站数据已经成为企业最重要的资产之一。然而不管是哪种类型的网站,难免会遇到数据丢失的问题。因此,数据库备份变得非常必要。本文将介绍一种使用PHP编写数据库备份的自动定时任务方法,既能保证数据的安全性,又能减轻管理员的工...
    99+
    2023-05-19
    PHP 定时任务 数据库备份
  • Docker MySQL每天定时自动备份的实现方法
    目录一:备份二:还原三:定时任务docker mysql数据库的备份与还原,以及每天定时自动备份 一:备份 查看docker mysql Ubuntu@ubuntu:~$ sudo docker ps CONTAINER...
    99+
    2023-01-05
    DockerMySQL定时自动备份 DockerMySQL定时备份
  • MySQL 双向备份的实现方法
    MySQL 双向备份也被称为 主主备份 ,即两个 MySQL 服务都是 Master,其中任意一个服务又是另一个服务的 Slave。 准备 服务器 MySQL服务器 ...
    99+
    2024-04-02
  • MySQ实现数据备份的方法
    这篇文章将为大家详细讲解有关MySQ实现数据备份的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。MySQL备份概述问题:备份和冗余有什么区别?备份:能够防止由于机械故...
    99+
    2024-04-02
  • Node定时备份MySQL的实现
    目录前言开发部署安装依赖编写代码pm2部署结语前言 前段时间发生了一件令我哭笑不得的事,部署在 Centos 服务器上的项目,因为需要重新上传· 部署,所以我执行了下面...
    99+
    2023-05-17
    Node定时备份MySQL MySQL定时备份
  • Java实现定时备份文件
    本文实例为大家分享了Java如何定时备份文件的具体实现代码,供大家参考,具体内容如下 程序思路: 1.空目录不备份,但非空目录都备份 2.源目录 source 要递归他下面所有的文件...
    99+
    2024-04-02
  • Linux利用inotify和rsync服务实现数据实时同步的原理解析
    目录文件定时同步的实现:文件实时同步的实现:inotifyinotify-tools包主要工具:inotifywait 命令:rsync工具rsync有三种工作方式:两种方式实现rsync服务器方式一:通过rsync守护...
    99+
    2024-04-02
  • MySQL定时备份数据库(全库备份)的实现
    目录一、MySQL数据备份 1.1、 mysqldump命令备份数据 1.2、 mysqldump常用操作示例 1.3、 还原mysql备份内容 二、 编写脚本维护备份的数据库文件 ...
    99+
    2024-04-02
  • C/C++详解如何实现文件备份
    目录一、C语言库的实现方法:二、系统调用函数:编写C程序,模拟实现Linux文件系统的简单I/O流操作:备份文件,将源文件source.dat备份为target.dat文件。要求: ...
    99+
    2024-04-02
  • navicat数据库备份的实现方法
    这篇文章主要介绍了navicat数据库备份的实现方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。navicat要想实现数据库的复制,只需要...
    99+
    2024-04-02
  • MySQL数据库的实时备份知识点详解
    前言 数据库实时备份的需求很常见,MySQL本身提供了 Replication 机制,摘译官方介绍如下: MySQL Replication 可以将一个主数据库中的数据同步到一个或多个从数据库中。并且这个同...
    99+
    2024-04-02
  • MySQL中怎么实现延时备份
    MySQL中怎么实现延时备份,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。 1、     m...
    99+
    2024-04-02
  • IIS中实现备份和还原的方法
    小编给大家分享一下IIS中实现备份和还原的方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!备份 IIS 配置若要备份 IIS&nb...
    99+
    2023-06-14
  • MongoDB实现备份压缩的方法教程
    背景及原理                &n...
    99+
    2024-04-02
  • sqlserver数据库实时备份的方法是什么
    SQL Server数据库实时备份的方法有以下几种: 使用SQL Server Management Studio (SSMS)...
    99+
    2023-10-27
    sqlserver
  • mysql实时备份数据库的方法是什么
    MySQL实时备份数据库的方法有以下几种:1. 使用MySQL的二进制日志(binary log):MySQL的二进制日志记录了数据...
    99+
    2023-08-17
    mysql
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作