zoukankan      html  css  js  c++  java
  • 定时执行rsync同步数据以及mysql备份

    需求:把机器A中的附件、图片等,备份到备份机B中。将数据库进行备份

    附件备份

    在A中,启动rsync服务,编辑/etc/xinetd.d/rsync文件,将其中的disable=yes改为disable=no,并重启xinetd服务(需安装xinetd)

     vi /etc/xinetd.d/rsync
     /etc/init.d/xinetd restart

    手动创建rsync的主配置文件: vi /etc/rsyncd.conf ,输入

            uid=root
            gid=root
            max connections=4
            log file=/var/log/rsyncd.log
            pid file=/var/run/rsyncd.pid
            lock file=/var/run/rsyncd.lock
            secrets file=/etc/rsyncd.passwd
            hosts allow=10.46.xx.xx
            
            [databak]
            comment= backup web
            path=/xx/xx/mybak
            read only = no
            exclude=test
    auth users=worker

     (主机)创建密码文件

    echo "work:abc12" > /etc/rsyncd.passwd
    chmod 600 /etc/rsyncd.passwd

    (备份机)创建备份机密码

    vi /etc/rsync_client.pwd,输入abc12
    chmod 600 /etc/rsync_client.pwd 

    备份机创建文件/home/bakdata.sh,赋予可执行权限 chmod +x bakdata.sh 。bakdata.sh的内容为

    echo '--------------------------------------------------------------' >> /home/data.log
        rsync -avz --progress --exclude "xxx" --password-file=/etc/rsync_client.pwd worker@10.46.1.62::data /home/bak/databak/ >> /home/data.log 2>& 1 &
        time=` date +%Y%m%d%H%M `
    echo $time >> /home/data.log

    数据库备份

    备份机创建文件/home/bakmysql.sh 赋予可执行权限:chmod +x bakmysql.sh。bakmysql.sh的内容为

        backupdir=/home/bak/databasebak
        time=` date +%Y%m%d%H%M `
        /home/server/mysql/bin/mysqldump -h10.xx.x.xx -ubackup -pbackup XXXX| gzip > $backupdir/database$time.sql.gz
    find $backupdir -name database"*.sql.gz" -type f -mtime +30 -exec rm -rf {} ; > /dev/null 2>&1

    crontab定时任务
    备份机设置定时任务,vi /etc/crontab ,加入:

    00 03 * * * root /home/bakmysql.sh
    00 04 * * * root /home/bakdata.sh

    表示每天凌晨3点进行备份数据库,4点同步data数据

    问题:

    1、出现 “rsync: opendir "/." (in data) failed: Permission denied (13)”

      解决: 不必重启Linux: setenforce 0;但开机后会恢复,则在/etc/sysconfig/selinux 中设置 SELINUX=disabled,将它关闭

  • 相关阅读:
    Shell 中的 expect 命令
    #每日日报#7.11
    #每日日报#7.10
    #每日日报#7.09
    #每日日报#7月8日
    每日日报2020.7.17
    每日日报2020.7.16
    每日日报2020.7.15
    每日日报2020.7.14
    每日日报2020.7.13
  • 原文地址:https://www.cnblogs.com/ohmydenzi/p/8315192.html
Copyright © 2011-2022 走看看