© Linux / 2017-08-08
现在的企业越来越关注编程人员的工作效率和成本,而shell实战中,MySQL的分库分表显得尤为重要,那么究竟该如何操作呢,今天Linux运维小编简单的分享一下干货内容,希望可以帮助大家。
[root@db02scripts]#cat/server/scripts/Store_backup.sh#脚本详细内容
#!/bin/sh
MYUSER=root
MYPASS=xuliangwei
SOCKET=/data/3306/mysql.sock
MYLOGIN=”mysql-u$MYUSER-p$MYPASS-S$SOCKET”
MYDUMP=”mysqldump-u$MYUSER-p$MYPASS-S$SOCKET-B”
DATABASE=”$($MYLOGIN-e“showdatabases;”|egrep-vi“Data|_schema|mysql”)”
fordbnamein$DATABASE
do
MYDIR=/server/backup/$dbname
[!-d$MYDIR]&&mkdir-p$MYDIR
$MYDUMP$dbname|gzip>$MYDIR/${dbname}_$(date+%F).sql.gz
done
[root@db02/]#tree/server/backup/#执行后的结果
/server/backup/
├──oldboy26
│├──oldboy26_2015-12-29.sql.gz
│├──oldboy26_2015-12-30.sql.gz
│└──oldboy26_2015-12-31.sql.gz
├──oldboy_xuliangwei26
│├──oldboy_xuliangwei26_2015-12-29.sql.gz
│├──oldboy_xuliangwei26_2015-12-30.sql.gz
│└──oldboy_xuliangwei26_2015-12-31.sql.gz
└──xuliangwei26
├──xuliangwei26_2015-12-29.sql.gz
├──xuliangwei26_2015-12-30.sql.gz
└──
xuliangwei26_2015-12-31.sql.gz
3directories,9files
Shell-MySQL分库分表备份脚本
[root@db02scripts]#catmysql_table.sh#脚本详细内容
#!/bin/sh
USER=root
PASSWD=xuliangwei
SOCKET=/data/3306/mysql.sock
MYLOGIN=”mysql-u$USER-p$PASSWD-S$SOCKET”
MYDUMP=”mysqldump-u$USER-p$PASSWD-S$SOCKET”
DATEBASE=”$($MYLOGIN-e“showdatabases;”|egrep-vi“Data|_schema|mysql”)”
fordbnamein$DATEBASE
do
TABLE=”$($MYLOGIN-e“use$dbname;showtables;”|sed‘1d’)”
fortnamein$TABLE
do
MYDIR=/server/backup/$dbname/${dbname}_$(date+%F)
[!-d$MYDIR]&&mkdir-p$MYDIR
$MYDUMP$dbname$tname|gzip>$MYDIR/${dbname}_${tname}_$(date+%F).sql.gz
done
done
[root@db02scripts]#tree/server/backup/#查看执行后的结果
/server/backup/
├──oldboy26
│├──oldboy26_2015-12-30
││├──oldboy26_oldboy_test_2015-12-30.sql.gz
││└──oldboy26_oldboy_test2_2015-12-30.sql.gz
│└──oldboy26_2015-12-31
│├──oldboy26_oldboy_test_2015-12-31.sql.gz
│└──oldboy26_oldboy_test2_2015-12-31.sql.gz
├──oldboy_xuliangwei26
│├──oldboy_xuliangwei26_2015-12-30
││├──oldboy_xuliangwei26_cloudstack_2015-12-30.sql.gz
││├──oldboy_xuliangwei26_dashborad_2015-12-30.sql.gz
││└──oldboy_xuliangwei26_student_2015-12-30.sql.gz
│└──oldboy_xuliangwei26_2015-12-31
│├──oldboy_xuliangwei26_cloudstack_2015-12-31.sql.gz
│├──oldboy_xuliangwei26_dashborad_2015-12-31.sql.gz
│└──oldboy_xuliangwei26_student_2015-12-31.sql.gz
└──xuliangwei26
├──xuliangwei26_2015-12-30
│├──xuliangwei26_openstack_2015-12-30.sql.gz
│├──xuliangwei26_saltstack_2015-12-30.sql.gz
│├──xuliangwei26_server_2015-12-30.sql.gz
│└──xuliangwei26_zabbix_2015-12-30.sql.gz
└──xuliangwei26_2015-12-31
├──xuliangwei26_openstack_2015-12-31.sql.gz
├──xuliangwei26_saltstack_2015-12-31.sql.gz
├──xuliangwei26_server_2015-12-31.sql.gz
└──xuliangwei26_zabbix_2015-12-31.sql.gz
9directories,18files
有任何关于shell编程问题可以随时访问我们的网站,或者在线提问。
(0)