[root@localhost mysql_backup]# cat /data/mysql_backup.sh
#!/bin/bash
mysql_user="root"
mysql_password="G2022rdy"
mysql_host="180.33.22.51"
mysql_port="3306"
mysql_charset="utf8mb4"
# 备份文件存放地址(根据实际情况填写)
backup_location=/data/mysql_backup
# 是否删除过期数据
expire_backup_delete="OFF"
# 过期时间设置
expire_days=15
backup_time=`date +%Y%m%d%H%M`
backup_dir=$backup_location
welcome_msg="Welcome to use MySQL backup tools!"
# 判断mysql实例是否正常运行
mysql_ps=`ps -ef |grep mysql |wc -l`
mysql_listen=`netstat -an |grep LISTEN |grep $mysql_port|wc -l`
if [ [$mysql_ps == 0] -o [$mysql_listen == 0] ]; then
echo "ERROR:MySQL is not running! backup stop!"
exit
else
echo $welcome_msg
fi
# 备份指定数据库中数据(此处假设数据库是mysql_backup_test)
mysqldump -h$mysql_host -P$mysql_port -u$mysql_user -p$mysql_password --single-transaction --master-data=2 --default-character-set=utf8mb4 --databases ruoyi_vue_blog_new > $backup_dir/ruoyi_vue_blog_new-$backup_time.sql
flag=`echo $?`
if [ $flag == "0" ];then
echo "database success backup to $backup_dir"
else
echo "database backup fail!"
fi
# 删除过期数据
if [ "$expire_backup_delete" == "ON" -a "$backup_location" != "" ];then
`find $backup_location/ -type f -mtime +$expire_days | xargs rm -rf`
echo "Expired backup data delete complete!"
fi
mysql备份脚本
最新推荐文章于 2025-08-05 17:47:02 发布