首页 > 代码库 > 16、MySQL数据库分库分表备份脚本
16、MySQL数据库分库分表备份脚本
MySQL数据库分库分表备份脚本
===================学员分享分库分表==========================
脚本单双引号的区别:
单引号是强引用,强制输出是所见即所得。
双引号是解析变量 和 多个字符串、数字等连接一个字符串
条件1 || 条件2 或 假真 真假
条件1 && 条件2 并 真真 假假
!条件1 && 条件2 并 真假 假真
[root@db02 backup]# cat /server/scripts/mysqldump1.sh
#!/bin/sh
USER=root
PASSWD=oldboy
SOCKET=/data/3306/mysql.sock
LOGIN="mysql -u$USER -p$PASSWD -S $SOCKET"
DATABASE=$($LOGIN -e "show databases;"|egrep -v "*chema|mysql"|sed ‘1d‘)
DUMP="mysqldump -u$USER -p$PASSWD -S $SOCKET"
for database in $DATABASE
do
TABLE=$($LOGIN -e "use $database;show tables;"|sed ‘1d‘)
for table in $TABLE
do
[ -d /server/backup/$database ] || mkdir -p /server/backup/$database
# [ ! -d /server/backup/$database ] && mkdir -p /server/backup/$database
$DUMP $database $table |gzip >/server/backup/$database/${database}_${table}_$(date +%F).sql.gz
done
done
=============================================================
16、MySQL数据库分库分表备份脚本