备份 MySQL 的 shell 脚本

#!/bin/bash
# 备份 MySQL 的 shell 脚本(mysqldump版本) 
 
# 定义变量 user(数据库用户名),passwd(数据库密码),date(备份的时间标签)
# dbname(需要备份的数据库名称,根据实际需求需要修改该变量的值,默认备份 mysql 数据库)
# crontab  ‐e  添加到定时任务中
 
user=root
dbname=preview
passwd=123456
date=$(date +%Y%m%d)
 
# 测试备份目录是否存在,不存在则自动创建该目录
[ ! -d /home/mysqlbackup ] && mkdir /home/mysqlbackup
# 使用 mysqldump 命令备份数据库
mysqldump --socket=/tmp/mysql.sock -u"$user" -p"$passwd" "$dbname" > /home/mysqlbackup/"$dbname"-${date}.sql 

# 压缩
cd /home/mysqlbackup
tar -zcvf "$dbname"-${date}.sql.tar.gz "$dbname"-${date}.sql

rm "$dbname"-${date}.sql

# 删除7天前的备份文件
find /home/mysqlbackup/ -type f -mtime +7 -exec rm -f {} \;
posted @ 2023-01-03 15:55  LiuChengloong  阅读(159)  评论(0编辑  收藏  举报