1.安装mysqldump(如果备份远程mysql库,本地不用安装mysql 也可以单独使用)

yum -y install holland-mysqldump.noarch

2.编写备份脚本

首先这里我还是进入到/usr/local/shell 目录下编写脚本

vi mysql_backup.sh

#!/bin/bash
#备份文件存储的目录
BACKUP_DIR=/data/backup/mysql #以执行的日期作为文件名,以防文件名重复覆盖
DATE=$(date +%Y_%m_%d) #连接mysql用户名、密码、IP、数据库名,请根据自己的自行修改
#用户名
MYSQL_USER=root #密码
MYSQL_PWD=123qweASD. #因为我这是本地备份,就使用localhost
HOST=localohost #使用的数据库
DATABASE=backup_test echo "mysql backup start $DATE"
#判断一下如果备份的目录不存在,就创建该目录,两种写法都行,目前我把两种方式都列出了,想尝试方式二的把注释放掉即可
#方式一:
if [ ! -d $BACKUP_DIR/$DATE ]
then mkdir -p $BACKUP_DIR/$DATE
fi
#方式二
#[ ! -d $BACKUP_DIR/$DATE ] && mkdir -p $BACKUP_DIR/$DATE #执行mysql备份数据库指令 其实最好将此文件进行压缩打包,这里简单保存为一个sql文件
mysqldump -u$MYSQL_USER -p$MYSQL_PWD --host=$HOST $DATABASE > $BACKUP_DIR/$DATE/$DATE.sql #删除5天前的老的备份
find $BACKUP_DIR -mtime +5 -name "*.sql" -exec rm -rf {} \; #解释上面这行命令的含义:
#find 是找到命令,找到变量BACKUP_DIR目录下 时间(-mtime) 5天前(+5) ,名字是(-name) 以.sql结尾的("*.sql")
#如果找到了的话(-exec),就执行后面的命令,rm -rf 删除 , {} \ 就是找到的内容。

3.设置定时器

给.sh文件赋予执行权限

chmod +x ./mysql_backup.sh

开始设置定时器

crontab -e

编写定时任务  每天凌晨2点备份

0 2 * * * /usr/local/shell/mysql_backup.sh

利用mysqldump 与 nginx定时器 定时备份mysql库的更多相关文章

  1. mysqldump+系统计划任务定时备份MySql数据

    MYSQL 数据库备份有很多种(cp.tar.lvm2.mysqldump.xtarbackup)等等,具体使用哪一个还要看你的数据规模.下面给出一个表 #摘自<学会用各种姿态备份Mysql数据 ...

  2. 【mysql】备份篇1:使用系统计划任务+mysqldump 定时备份mysql数据库 不用输入密码自动导出sql文件

    项目部署在服务期上之后,有了新的需求,需要每月定时备份mysql数据库的所有数据! 查找了网上的多篇文章之后,自己又对bat文件中的mysqldump语句进行改进,可以实现了不用输入密码就能自动定时备 ...

  3. centos lamp/lnmp阶段复习 以后搬迁discuz论坛不需要重新安装,只需修改配置文件即可 安装wordpress 安装phpmyadmin 定时备份mysql两种方法 第二十五节课

    centos  lamp/lnmp阶段复习 以后搬迁discuz论坛不需要重新安装,只需修改配置文件即可 安装wordpress  安装phpmyadmin  定时备份mysql两种方法  第二十五节 ...

  4. Centos使用crontab自动定时备份mysql的脚本

    在我们网站上线之后免不了需要备份数据库,为什么要备份呢?我给大家列出了3个理由. 1.防止数据丢失 2.防止数据改错了,可以用来恢复 3.方便给客户数据 以 上几点告诉我们要经常备份,当然我今天给大家 ...

  5. linux下使用crontab定时备份MYSQL数据库的方法:

    摘要 linux下使用crontab定时备份MYSQL数据库的方法: 只需按照下面3步做,一切都在你的掌控之下: 第一步:在服务器上配置备份目录代码: ------------------------ ...

  6. 了解cron以及使用cron定时备份MySQL

    cron是一个linux下的定时执行工具,可以在无需人工干预的情况下运行作业.由于Cron 是Linux的内置服务,但它不自动起来,可以用以下的方法启动.关闭这个服务: /sbin/service c ...

  7. Linux下定时备份MySQL数据库的Shell脚本

    Linux下定时备份MySQL数据库的Shell脚本   对任何一个已经上线的网站站点来说,数据备份都是必须的.无论版本更新还是服务器迁移,备份数据的重要性不言而喻.人工备份数据的方式不单耗费大量时间 ...

  8. centos7-每天定时备份 mysql数据库

    centos7-每天定时备份 mysql数据库 第一步:编写数据库备份脚本database_mysql_shell.sh #!/bin/bash DATE=`date +%Y%m%d%H%M` #ev ...

  9. 定时备份mysql数据库的shell脚本

    最近项目需要定时备份mysql数据库的数据,根据需求写了一份定时备份mysql数据库的脚本. -h mysql的地址  默认为localhost -P 端口号  默认为3306 -u 用户  默认为r ...

随机推荐

  1. AT2401 [ARC072C] Alice in linear land

    基于观察,可以发现这样一条性质: 我们并不关心当前位置和终点的绝对关系,只在乎当前位置和终点的距离,当这个距离确定的时候接下来能走到的位置也是确定的. 基于这个观察可以发现,本质上每个位置的状态就是和 ...

  2. Redis实现延迟对列

    一.应用场景: 订单超过 30 分钟未支付,则自动取消. 外卖商家超时未接单,则自动取消. 医生抢单电话点诊,超过 30 分钟未打电话,则自动退款.等等场景都可以用定时任务去轮询实现,但是当数据量过大 ...

  3. MySQL的注释方法

    MySQL的三种注释方式 #1.单行注释 -- 2.单行注释(注意中间要带有一个空格才能生效) /*3.多行注释*/

  4. git每次操作都要输入账号密码 解决方案

    1.执行命令: git config --global credential.helper store git pull 2.输入用户名密码,以后就不会再次要求用户名密码了

  5. NSArray文件读写

    1.NSArray数据写入到文件中 NSArray *arr = @[@"lnj", @"lmj", @"jjj", @"xcq& ...

  6. NSTimer的使用

    开启定时器 @property (nonatomic, weak) NSTimer *timer; // 返回一个自动开始执行任务的定时器 self.timer = [NSTimer schedule ...

  7. k8s之yaml文件详解

    k8s之yaml文件详解 目录 k8s之yaml文件详解 1. k8s支持的文件格式 2. YAML语言格式 3. 查看api资源版本标签 4. 编写nginx-test.yaml资源配置清单 4.1 ...

  8. 实现redis哨兵,模拟master故障场景

    由于主从架构无法实现master和slave角色的自动切换,所以在发送master节点宕机时,redis主从复制无法实现自动的故障转移,即将slave 自动提升为新的master.因此,需要配置哨兵来 ...

  9. Winds10 安装JDK8.0教程

    首先下载一个jdk,可以通过这个链接下载:https://pan.baidu.com/s/1aP6SdL8UQK_C2GvALLb6Wg也可以去官网下载:https://www.oracle.com/ ...

  10. suse 12 安装git客户端

    suse-linux:~ # zypper addrepo http://download.opensuse.org/repositories/devel:/tools:/scm/SLE_12_SP5 ...