mysql日常备份脚本

mysql 日常备份脚本

使用linxu的crontab做定时任务,每天执行备份脚本。

复制代码
# mkdir /home/mysql_backup
# cat > /home/mysql_backup/mysql_backup.sh << EOF
#!/bin/sh
###每天运行一次
###定义用户 密码 备份目录等信息
user=root
user=127.0.1.1
psd=123456
backup_base
=/home/sdb/mysql_backup
date=`date +%Y%m%d`
old_date
=`date +%Y%m%d -d -30days` ###保存的天数
###获取库名,排除不需要备份的库

for db in `mysql -u$user -p$psd -h$host -s -N -e "show databases"|grep -v -E "(zabbix|test|percona|information_schema|performance_schema|mysql|sys)"`
do
###创建备份目录
if [ ! -d $backup_base/$db ];
then mkdir $backup_base/$db
fi
cd $backup_base
/$db
chattr -R -i ./*
rm -f $old_date.sql* &>/dev/null #删除30天以前的
mysqldump -u$user -p$psd
-h$host --events --routines $db |gzip > $date.sql.gz ###备份&压缩
chattr -R +i ./* ###这里加了个防误删的属性
done
EOF
复制代码

将备份脚本添加到crontab的定时任务中,每天凌晨02:00执行备份脚本。

# crontab -e
00 02 * * * /home/mysql_backup/mysql_backup.sh

临时备份

在升级时临时将mysql中的所有库都备份到同一个文件中。

#mysqldump -u root –p’passwd’ -h$host --all-databases  > /home/all_mysql_backup_20200408.sql

 

posted @   霜学  阅读(81)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示