首页 > 数据库 >五、使用sersync+rsync以及xtrabackup+crontab实现文件的实时备份和数据库的定时备份

五、使用sersync+rsync以及xtrabackup+crontab实现文件的实时备份和数据库的定时备份

时间:2023-03-28 14:24:35浏览次数:47  
标签:rsync sersync 备份 etc xtrabackup com

5.1环境说明

主机

IP地址

备注

NFS+Redis

192.168.1.16

sersync实时同步文件到备份主机

Backup

192.168.1.17

rsync接收备份及xtraback备份

5.2 配置NFS文件实时同步备份

5.2.1 配置rsync守护进程

执行主机Backup

创建rsync进程用户

useradd -M -s /sbin/nologin

创建用户认证文件并授权,内容格式为“用户名:密码”

echo "wordpress:123456" > /etc/rsync.password
chmod 600 /etc/rsync.password

编缉rsync配置文件,修改进程用户,添加同步模块、同步用户及认证文件

cat > /tmp/rsyncd.conf << EOF
uid = rsync
gid = rsync
port = 873
fake super = yes
use chroot = no
max connections = 200
timeout = 600
ignore errors
read only = false
list = false
auth users = wordpress
secrets file = /etc/rsync.password
log file = /var/log/rsyncd.log

[wordpress]
path = /data/wordpress
EOF

启动rsync守护进程服务

systemctl enable rsyncd && systemctl start rsyncd

5.2.2 配置NFS文件实时同步

执行主机NFS+Redis

下载sersync

wget https://raw.githubusercontent.com/wsgzao/sersync/master/sersync2.5.4_64bit_binary_stable_final.tar.gz

解压

tar zxf sersync2.5.4_64bit_binary_stable_final.tar.gz -C /usr/local

重命名

mv /usr/local/{GNU-Linux-x86,sersync}

添加到环境变量

echo "/usr/local/sersync/" > /etc/profile.d/sersync.sh
source /etc/profile

创建同步用户的密码文件

echo "123456" > /etc/rsync.pas
chmod 600 /etc/rsync.pas

编缉sersync配置文件,修改需监控的目录、同步用户及密码文件

vim /usr/local/sersync/confxml.xml
……
        <localpath watch="/data/wordpress">
            <remote ip="192.168.1.17" name="wordpress"/>
        </localpath>
        <rsync>
            <commonParams params="-avz"/>
            <auth start="true" users="wordpress" passwordfile="/etc/rsync.pas"/>
    ……
        </rsync>
……

启动

sersync2 -dro /usr/local/sersync/confxml.xml

5.3 配置数据库定时备份

使用xtrabackup定时备份数据库,执行主机Backup

安装mysql环境

略(详见 1.2.1 Msql安装章节)

下载安装xtrabackup工具

wget https://downloads.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.27/binary/redhat/7/x86_64/percona-xtrabackup-24-2.4.27-1.el7.x86_64.rpm
yum localinstall percona-xtrabackup-24-2.4.27-1.el7.x86_64.rpm

配置邮箱,根据实际修改以下信息

vim /etc/mail.rc
……
set [email protected]
set smtp=smtp.exmail.qq.com
set [email protected]
set smtp-auth-password=xxxxxxxxxxxx
set smtp-auth=login
……

编写备份脚本

mkdir /etc/scripts
vim /etc/scripts/dbbackup.sh
#!/bin/bash
Host="192.168.1.15"
User="root"
Pwd="123456"
Pth="/data/mysql/full_$(date +%F)"
/usr/bin/innobackupex --host=$Host --user=$User --password=$Pwd $Pth 2>/var/log/dbbackup_error.log
if [ $? -eq 0 ];then
  mail -s "数据库备份成功!"  [email protected] < echo "备份成功"
else
  mail -s "数据库备份失败!"  [email protected] < echo "备份失败"
fi

添加到定时作业

crontab -e
0 23 * * * /bin/bash /etc/scripts/dbbackup.sh

 

标签:rsync,sersync,备份,etc,xtrabackup,com
From: https://www.cnblogs.com/isxiefeng/p/17264984.html

相关文章

  • Edge浏览器不弹出保存密码弹窗的解决方法和Edge浏览器打包扩展Edge备份扩展的方法
    1、解决不弹保存密码弹窗的方法时退出账号时勾选"从此设备中清除收藏夹、历史记录、密码和其他浏览数据"。  2、如何备份打包扩展呢,扩展只能一个个的打包。选扩展根目......
  • java代码备份mysql数据库
    生成环境的数据库我们需要不断的进行备份,不然服务器出现故障,会是灾难性的直接添加我的代码packagecom.hrp.task;importcom.alibaba.fastjson.JSON;importcom.bas......
  • idea_life_4(论备份的好习惯)
    下面说一下,最近工作中遇到的两个关于备份的问题首先呢,第一个就是我有一次,在操作我们开发库的时候,忘记添加where语条件了,导致我们开发库的某一列数据全部被修改。这个问题......
  • 如何备份SQLServer到网络共享
    首选和最直接的方法是简单地创建数据库的本地备份,然后将相应的备份文件复制到网络共享。你可以通过创建一个像这样的批处理脚本来做到这一点:SETLocalFolder=C:Program......
  • mysql数据库备份与恢复
    环境:CentOS7.9mysql-5.71.数据库准备,建表createdatabaseschool;CREATETABLEstudent(idINT(10)NOTNULLUNIQUEPRIMARYKEY,nameVARCHAR(20)NOTNULL,se......
  • NBU备份恢复AD操作指引​
    AD粒度恢复前提AD粒度恢复需要在如下前提下进行:配置NetBackup客户端服务的登录帐户安装和配置用于ActiveDirectory粒度恢复的网络文件系统(NFS),AD安装NFS之后,禁用并停用“......
  • gs_probackup增量备份ptrack.cpp : 88
    问题描述:使用gs_probackup对opengauss进行增量备份失败[omm@testmysqldb04~]$shgs_probackup.shincbackuppg_switch_xlog----------------0/46000000(1row)I......
  • MySQL数据库备份与恢复
    一,备份,恢复为什么要备份灾难恢复:硬件故障、软件故障、自然灾害、黑客攻击、误操作测试等数据丢失场景参考链接:https://www.toutiao.com/a6939518201961251359/ ......
  • 多ip服务器数据怎么备份?
    多ip服务器数据怎么备份?1、应用程序定期进行备份通过确保经常定期进行备份,防止您的关键服务器数据丢失。一般来说,服务器的海外应用都有备份工具,比如常用的控制面板如等,提......
  • mysql定期备份bat脚本
    @echooffecho设置MySql数据库的连接信息sethost=127.0.0.1setport=3306setuser=rootsetpass=123456;echo设置要备份MySql数据库名称setdbname=hncgecho......