(转)企业Shell实战-MySQL分库分表备份脚本
本文来自http://www.xuliangwei.com/xubusi/252.html
免费视频讲解见 http://edu.51cto.com/course/course_id-5064.html
原文:http://blog.51cto.com/oldboy/1665163--------------18道Shell高级编程企业实战题及参考答案
今天是2015年的最后一天,大家都开心的跨年,而我还在苦逼的呵呵—省略
此处内容来自老男孩教育oldboy以及老男孩26期王续精彩分享整理而来 为表示感谢,特整理此篇博文分享给大家!
项目联系笔者QQ:572891887 也可以加入架构师交流群:471443208 进行交流
[root@db02 scripts]# 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 “show databases;”|egrep -vi “Data|_schema|mysql”)”
for dbname in $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
3 directories, 9 files
Shell-MySQL分库分表备份脚本
[root@db02 scripts]# cat mysql_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 “show databases;”|egrep -vi “Data|_schema|mysql”)”
for dbname in $DATEBASE
do
TABLE=”$($MYLOGIN -e “use $dbname;show tables;”|sed ‘1d’)”
for tname in $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@db02 scripts]# 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
9 directories, 18 files
项目联系笔者QQ:572891887 也可以加入架构师交流群:471443208 进行交流
本文出自 “老男孩linux培训” 博客,请务必保留此出处http://oldboy.blog.51cto.com/2561410/1731109
最新文章
- ABP源码分析四十六:ABP ZERO中的Ldap模块
- HttpHandler
- Haskell 笔记 ①
- HackerRank ";Training the army"; - Max Flow
- Mysql 的存储过程和存储函数
- JAX-WS + Spring 开发webservice
- BAT级别分类
- 安卓和IOS兼容问题
- Urllib库的使用
- java全角和半角转换
- HTML一片空白, 无法渲染: Empty tag doesn't work in some browsers
- unity3d IL2CPP for android
- POJ1860-Currency Exchange (正权回路)【Bellman-Ford】
- Java如何以不同国家的格式显示时间?
- async/await工作机制探究--NodeJS
- RedHat/CentOS 7通过nmcli命令管理网络教程
- AngularJS Source code
- selenium学习笔记(加入unittest)
- SQLite在C#中的使用
- 问渠那得清如许?为有源头活水来。——java面向对象的思想
热门文章
- 编写高质量代码改善C#程序的157个建议——建议6: 区别readonly和const的使用方法
- 策略与计费控制规则(Policy and Charging Control Rule-PCC Rule)解析及模板样例
- jQuery bind() live()
- C++的惨痛教训(未完待续)
- Underscore.js 1.3.3 中文解释
- SharePoint 2013备份方法整理
- js 去空格 和 获得字节数
- 如何下载网页上的视频 并且 flv 格式转化成 MP4
- python文件操作-修改文件中的内容
- 【bzoj3456】城市规划 dp+多项式求逆