shell脚本定时自动备份mysql数据库

1.编写mysql备份脚本

a.逻辑备份

#!/bin/bash

#数据库用户名
user=root
#数据库密码
key=123456
#被备份的数据库名称
dbname=mysql

#获取日期
date=$(date +%Y%m%d);
#定义备份文件名称格式:库名_日期
bak=${dbname}_${date};

if [ ! -f /tmp/$bak.sql ];then
        mysqldump -u$user --password="${key}" ${dbname} > /tmp/${bak}.sql
        echo '备份完成'
else
        echo '备份文件已存在!'
fi

 b.物理备份

  ...waiting

ps:记得给脚本执行权限  chmod +x 脚本名称

2.使用shell内置cron服务配置定时自动运行脚本完成备份

service status crontab  查看cron服务是否运行,关于cron更多信息请查看shell定时任务 - 博客园 (cnblogs.com)

使用crontab -e进入定时任务编辑界面:

添加如下规则:

0 1 * * * root sh /root/mysqlBak.sh   (每天1点钟时执行root用户中的 /root/mysqlBak.sh )

保存退出。

posted @ 2021-12-01 11:26  诟笑  阅读(508)  评论(0编辑  收藏  举报