centos7中每天定时备份mysql数据库

#1、创建备份存放的目录 

mkdir DB

#2.编写要执行的.sh脚本文件 

vi database_erp_bak.sh 

填加下面的内容进上面的文件 ,为了不占内存 备份过程中压缩文件

#!/bin/bash
echo '##########################################'
echo '###### 每天凌晨02:00 自动备份数据库 ######'
echo '##########################################'

# 设置环境变量
DATE=$(date +%Y%m%d)
USERNAME=用户名
PASSWORD=密码
DB=数据库名
DIR=/datadrive/DB/bak
echo '获取系统日期:'  $DATE

if [ ! -d "$DIR" ]; then
   mkdir $DIR
fi

cd $DIR

echo '开始备份...' $(date "+%Y-%m-%d %H:%M:%S")

/usr/bin/mysqldump -u$USERNAME -p$PASSWORD $DB | gzip > 数据库名_$DATE.sql.gz

echo '备份完成' $(date "+%Y-%m-%d %H:%M:%S")

这样要注意 mysqldump命令是否是在该目录中/usr/bin/mysqldump;

同时要根据自己的服务器,把备份的数据存放到数据盘中DIR=/datadrive/DB/bak(/datadrive/DB/bak根据自己服务器自行进行调整);

#3.查看mysqldump命令在哪里

find / -name mysqldump -print

#4.然后再用ln命令链接到/usr/bin下面 

ln -fs /datadrive/mysql/bin/mysqldump /usr/bin

 #5.给脚本文件赋权

chmod +x database_erp_bak.sh

#6.测试脚本是否能执行

如果不报错说明可以正常执行,接下来就是将脚本添加到定时任务当中去

证明文件已经生成了

#7. 添加定时任务

crontab -e

退出保存后,显示如下:

这里要特别注意,修改了定时任务后,需要重启crond才能生效

重启命令:

service crond start

service crond stop

#8.确认服务器是否开启定时任务计划服务 

service crond status

如果没有启动,则可以使用该命令进行启动 

service crond start

#9. 查看crontab执行记录

如果出现了crontab定时任务不执行的情况,首先需要定位问题,那么就需要通过日志来确定问题所在。

crontab的日志位置一般位于/var/log/cron,利用下面的语句即可查看日志。

less /var/log/cron

#10.如何每天定时删除之前备份的文件,请看下一篇文章

https://blog.csdn.net/u011442726/article/details/105709703

猜你喜欢

转载自blog.csdn.net/u011442726/article/details/105701785
今日推荐