linux下实现mysql数据库自动定时备份


1.新建文件

在home下新建backup/bkDatabaseName.sh文件

# 打开到home文件夹
cd /home

# 新建 backup 文件夹
mkdir backup

# 打开 backup
cd backup

# 编辑
vi bkDatabaseName.sh

2.vi编辑命令

username 替换为实际的用户名;
password 替换为实际的密码;
DatabaseName 替换为实际的数据库名;

输入/粘贴以下内容:

#!/bin/bash
mysqldump -uusername -ppassword DatabaseName > /home/backup/DatabaseName_$(date +%Y%m%d_%H%M%S).sql

3.对备份进行压缩(可选)如操作参考上面步骤

#!/bin/bash
mysqldump -uusername -ppassword DatabaseName | gzip > /home/backup/DatabaseName_$(date +%Y%m%d_%H%M%S).sql.gz

4.添加可执行权限

 chmod u+x bkDatabaseName.sh

添加可执行权限之后先执行一下,看看脚本有没有错误,能不能正常使用;

./bkDatabaseName.sh

5.测试 添加计划任务执行命令:

crontab -e

这时就像使用vi编辑器一样,可以对计划任务进行编辑。
输入以下内容并保存: 退出保存 1、按esc  2、输入法状态为英文冒号: 3、wq 

标红处二选一

# 意思是每一分钟执行一次shell脚本“/home/backup/bkDatabaseName.sh”。
*/1 * * * * /home/backup/bkDatabaseName.sh

# 每天晚上23点58执行备份命令
58 23  * * *  /home/backup/bkDatabaseName.sh

# 通过一下命令可以查看定时任务
crontab -l

 

其他命令
#查看服务状态
systemctl status crond
#启动
systemctl start crond
#停止
systemctl stop crond
#重启
systemctl restart crond
#重新加载
systemctl reload crond
#开机启动crontab服务
systemctl start crond

 

posted @ 2022-06-29 18:07  小生怕痒  阅读(454)  评论(0编辑  收藏  举报