shell 脚本自动备份 mysql

版权声明:本文为博主原创文章,转载请注明出处 https://blog.csdn.net/lidalin_se/article/details/79542072

即使现在的云数据库如此强大,但是一些小公司或小项目,还是业务和数据放在一台服务器,提心吊胆不知道啥时候误操作把数据库drop了,误删除了数据,所以每天自动备份数据库非常有必要,如果您使用的云数据库可以忽略此文章。

shell + 计划任务备份mysql

#!/bin/bash
#备份路径
backUpPath='/data/backup'

#数据库信息
host='192.168.3.1'  
port='3306'
username='root'
password='123456'
dbname='test'

#命名规则
backname=`date "+%Y-%m-%d-%H-%M"`

#连接数据库
mysqldump --host=${host} --port=${port} --user=${username} --password=${password} ${dbname} > ${backUpPath}/${backname}.sql

小知识点

1. mysqldump

2. 计划任务

这里写图片描述

特殊符号

  • “*” 代表取值范围内的数字,

  • “/” 代表”每”,

  • “-” 代表从某个数字到某个数字,

  • “,” 分开几个离散的数字

实例

  • 5 * * * * /shell/back.sh //指定每小时的第5分钟执行一次备份命令
  • */10 * * * * /shell/back.sh //指定每小时的第10分钟执行一次备份命令
  • 8-10 * * * * /shell/back.sh //指定每小时的第8-10分钟执行一次备份命令
  • 8,9,11 * * * * /shell/back.sh //指定每小时的第8 9 11分钟执行一次备份命令

计划任务管理

crontab -l  //显示当前计划任务
crontab -e  //编辑计划任务

/etc/init.d/crond restart  //重启计划任务
/etc/init.d/crond start   //开始计划任务
/etc/init.d/crond reload  //重载配置文件
/etc/init.d/crond end //关闭计划任务

 cd /var/spool/cron/    //查看当前用户的计划任务文件

猜你喜欢

转载自blog.csdn.net/lidalin_se/article/details/79542072