备份方案:
本地备份并同步至远程服务器,保留30天数据

1. 本地数据库备份,备份数据库gold_ecooy,naiang
#!/bin/bash
#xliang
#Created Time: 2018-12-17
#File Name : backup_databases.sh
# 利用mysqldump工具进行数据库备份,与crontab一起使用

BAK_PATH=/backup_databases
DB_NAME=(gold_ecooy naiang)

for i in ${DB_NAME[@]}
do
  if [ ! -d "$BAK_PATH/$i" ];then
    mkdir -p $BAK_PATH/$i
  fi

  mysqldump -uroot -p"MnfYeFxxxxx" --databases $i | gzip > $BAK_PATH/$i/$i`date "+%Y%m%d%H%M%S"`.sql.gz
done

find $BAK_PATH -mtime +30 -name "*.sql.gz" -exec rm -rf {} \;

2. 本地rsync 配置
# echo "cxxxxxj666" > /etc/rsyncd.secrets    # 名字自定义,cxxxxxj666为rsync服务端配置的用户名为db的密码,不需要用户名
# chmod 600 /etc/rsyncd.secrets
# rsync --daemon                             # 以守护进程开启,如果提示没有配置文件touch /etc/rsyncd.conf即可
# echo "rsync --daemon" >> /etc/rc.local

3. 配置计划任务,数据库20分钟备份一次,30分钟同步一次远程服务器
# cronta -e
*/20 * * * * /backup_databases/backup_databases.sh >/dev/null 2>&1
*/30 * * * * rsync -avh --delete --progress --exclude 'backup_databases.sh' --password-file=/etc/rsyncd.secrets /backup_databases/ db@4.49.15.79::db01 >/dev/null 2>&1

4. 远程备份服务器配置
4.1 rsync配置文件
# cat /etc/rsyncd.conf
uid = root
gid = root
use chroot = no
ignore errors
read only = no

transfer logging = yes
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock

[db01]
comment = database_bak_7.75.194.229
path = /databases_bakup/7.75.194.229
auth users = db
secrets file = /etc/rsyncd.secrets
host allow = 7.75.194.229/32
#host allow = *
list = false

4.2 rsync 密码文件
# echo "db:cxxxxxj666" > /etc/rsyncd.secrets
# chmod 600 /etc/rsyncd.secrets
# rsync --daemon
# echo "rsync --daemon" >> /etc/rc.local

4.3 恢复数据库
mysql> use gold_ecooy;
mysql> source /home/gold_ecooy.sql

mysql 定时备份任务的更多相关文章

  1. linux下mysql定时备份数据库

    linux下mysql定时备份数据库 (2010-10-21 12:40:17) 转载▼ 标签: 杂谈   一.用命令实现备份 首页进入mysql的bin目录 1.备份数据#mysqldump -uu ...

  2. MySQL定时备份之使用Linux下的crontab定时备份实例

    这篇文章主要介绍了使用Linux下的crontab进行MySQL定时备份的例子,需要的朋友可以参考下   复制代码代码如下: ##################################### ...

  3. Navicat for MySQL定时备份数据库及数据恢复

    在做数据库修改或删除操作中,可能会导致数据错误,甚至数据库奔溃,而有效的定时备份能很好地保护数据库.本篇文章主要讲述Navicat for MySQL定时备份数据库和数据恢复等功能,同时可以定时播放电 ...

  4. mysql 定时备份bat脚本 ,方便小型服务简单快速备份mysql

    mysql定时备份bat脚本 echo 数据库为用户名为root 密码为root 数据库名为kdykt echo mysqldump 命令如果没有配置环境变量要在bin目录下执行 set " ...

  5. MySQL定时备份(全量备份+增量备份)

    MySQL 定时备份 参考 zone7_ 的 实战-MySQL定时备份系列文章 参考 zmcyu 的 mysql数据库的完整备份.差异备份.增量备份 更多binlog的学习参考马丁传奇的 MySQL的 ...

  6. mysql定时备份任务

    简介 在生产环境上,为了避免数据的丢失,通常情况下都会定时的对数据库进行备份.而Linux的crontab指令则可以帮助我们实现对数据库定时进行备份.首先我们来简单了解crontab指令,如果你会了请 ...

  7. linux下系统定时任务配置----crontab(mysql定时备份)

    crontab命令用于设置周期性被执行的指令,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任 ...

  8. linux mysql定时备份

    项目需要定时备份数据库,以下是自己的操作笔记 1.检查磁盘空间 # df -h Filesystem Size Used Avail Use% Mounted on /dev/vda1 40G 3.6 ...

  9. MySQL定时备份数据库

    一.MySQL数据备份 1.1. mysqldump命令备份数据 在MySQL中提供了命令行导出数据库数据以及文件的一种方便的工具mysqldump,我们可以通过命令行直接实现数据库内容的导出dump ...

  10. linux mysql 定时备份

    1.查看磁盘空间情况: 既然是定时备份,就要选择一个空间充足的磁盘空间,避免出现因空间不足导致备份失败,数据丢失的恶果! 存储到当前磁盘这是最简单,却是最不推荐的:服务器有多块硬盘,最好是把备份存放到 ...

随机推荐

  1. gentoo: startx: drmsetmaster failed: permission denied

    今天更新了 xorg-server 之后, startx 就进不了 X了,但是可以用 sudo startx 进入 X,所以感觉很奇怪. 后来终于在 gentoo 官方论坛上面找到答案了. https ...

  2. centos磁盘挂载|centos虚拟机硬盘不够怎么办?|centos虚拟机硬盘的扩展

    Centos6磁盘挂载 添加一块磁盘 分区,格式化,挂载新磁盘 磁盘挂载 df -lh fdisk -l fdisk /dev/sdb 这个命令执行后依次输 n p 回车 回车 w fdisk -l ...

  3. mongodb的聚合aggregate|group|match|project|sort|limit|skip|unwind

    聚合 aggregate 聚合(aggregate)主要用于计算数据,类似sql中的sum().avg() 语法 db.集合名称.aggregate([{管道:{表达式}}]) 管道 管道在Unix和 ...

  4. Cannot run Eclipse; JVM terminated. Exit code=13

    在myeclipse 上运行好好的, 在 eclipse 上就运行不了了. 运行eclipse.exe 就出现: Cannot run Eclipse; JVM terminated. Exit co ...

  5. PHP Yii2.0PHPexecl导入。

    use app\models\execl; use \PHPExcel; /*execl导入数据*/ public function Execlupload(){ if(Yii::$app->r ...

  6. out.println与<%!%>的功能一样

    <%! public static final String DBDRIVER = "A"; public static final String DBURL = " ...

  7. python第三方库自动安装脚本

    #python第三方库自动安装脚本,需要在cmd中运行此脚本#BatchInstall.pyimport oslibs = {"numpy","matplotlib&qu ...

  8. Spring的applicationContext.xml的疑问解析

    Spring中注解注入 context:component-scan 的使用说明 通常情况下我们在创建spring项目的时候在xml配置文件中都会配置这个标签,配置完这个标签后,spring就会去自动 ...

  9. golang 的 mysql 操作

    goLang的mysql操作,大致可分为三个步骤: 1.下载mysql驱动:go get github.com/go-sql-driver/mysql 2.建立连接:sql.Open("my ...

  10. JVM老年代和新生代的比例

    在 Java 中,堆被划分成两个不同的区域:新生代 ( Young ).老年代 ( Old ).新生代 ( Young ) 又被划分为三个区域:Eden.From Survivor.To Surviv ...