我们做了mysql主从之后呢,需要分库分表的备份,为了实现更快的工作效率所以我们需要一个shell来实现一键备份。
数据库备份shell脚本
# vim /shell/backup_mysql.sh
#!/bin/bash
date=`date +%Y-%m-%d`
database=`mysql -uroot -p123456 -e "show databases;" | grep -v Database`
for db in $database
do
[ -d /opt/$date/$db ] || mkdir -p /opt/$date/$db
mysqldump -uroot -p123456 --skip-lock-tables $db > /opt/$date/$db.sql
table=`mysql -uroot -p123456 -e "show tables from $db" | grep -v Tables`
for t in $table
do
mysqldump -uroot -p123456 --skip-lock-tables $db $t >/opt/$date/$db/$t.sql
done
done
之后我们也可以加入crontab定时任务来进行一个定时备份。