版权声明:本文为博主原创文章,转载请注明出处 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/ //查看当前用户的计划任务文件