登录
首页 >  数据库 >  MySQL

mysql定时备份

来源:SegmentFault

时间:2023-02-24 12:42:38 247浏览 收藏

对于一个数据库开发者来说,牢固扎实的基础是十分重要的,golang学习网就来带大家一点点的掌握基础知识点。今天本篇文章带大家了解《mysql定时备份》,主要介绍了MySQL、服务器、Linux、centos、运维,希望对大家的知识积累有所帮助,快点收藏起来吧,否则需要时就找不到了!

本篇介绍下在linux下mysql通过mysqldump备份数据库。

1.建立备份脚本及备份文件存放目录

通过

 df -h 
命令查看适合存放日志的目录,根据个人喜好只要容量足够就行
image.png

#进入目录
cd /bak/
#创建备份日志目录
mkdir mysqldumpbackuplog
#创建备份文件目录
mkdir mysqldumpbackupfile

如图

image.png

编写脚本文件

#创建编辑文件
vi mysqldumpbackup.sh

输入以下内容

#!/bin/bash
#数据库地址
hostname='localhost'
#数据库账号
username='username'
#数据库密码
password='password'
#备份时间
backuptime=`date +%Y%m%d%H%M%S`
#日志备份路径
logpath='/bak/mysqldumpbackuplog/'
#文件备份路径
filepath='/bak/mysqldumpbackupfile/'
#输出日志
echo "数据库备份开始!!${backuptime}" >> ${logpath}/mysqldumplog.log
#执行mysqldump备份数据库
mysqldump --single-transaction -h${hostname} -u${username} -p${password} --all-databases > ${filepath}/mysqldump_${backuptime}.sql
#备份成功以下操作
if [ "$?" == 0 ];then
cd $filepath
#只保存7天内的备份,这里先注释删除语句
#find $filepath -name "*.sql" -type f -mtime +7 -exec rm -rf {} \;
echo "数据库备份成功!!${backuptime}" >> ${logpath}/mysqldumplog.log
else
#备份失败则进行以下操作
echo "数据库备份失败!!${backuptime}" >> ${logpath}/mysqldumplog.log
fi

2.给脚本添加运行权限

chmod +x mysqldumpbackup.sh

3.crontab中添加定时执行脚本任务

crontab -e

添加一个任务(每天2点执行备份)

0 2 * * * /bak/mysqldumpbackup.sh

查看crontab列表

crontab -l

有不懂的欢迎留言!!!

好了,本文到此结束,带大家了解了《mysql定时备份》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多数据库知识!

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>