(转)企业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
(转)企业Shell实战-MySQL分库分表备份脚本的更多相关文章
- MySQL分库分表备份脚本
MySQL分库备份脚本 #脚本详细内容 [root@db02 scripts]# cat /server/scripts/Store_backup.sh #!/bin/sh MYUSER=root M ...
- 分享一个MySQL分库分表备份脚本(原)
分享一个MySQL分库备份脚本(原) 开发思路: 1.路径:规定备份到什么位置,把路径(先判断是否存在,不存在创建一个目录)先定义好,我的路径:/mysql/backup,每个备份用压缩提升效率,带上 ...
- mysql 分库分表备份脚本
#!/bin/bash USER=root #用户 PASSWORD=123456 #密码 MYSQL_PATH=127.0.0.1 #地址 MYSQL_BIN=/bin/mysql MYSQL_DU ...
- Java互联网架构-Mysql分库分表订单生成系统实战分析
概述 分库分表的必要性 首先我们来了解一下为什么要做分库分表.在我们的业务(web应用)中,关系型数据库本身比较容易成为系统性能瓶颈,单机存储容量.连接数.处理能力等都很有限,数据库本身的“有状态性” ...
- 实现对MySQL数据库进行分库/分表备份(shell脚本)
工作中,往往数据库备份是件非常重要的事情,毕竟数据就是金钱,就是生命!废话不多,下面介绍一下:如何实现对MySQL数据库进行分库备份(shell脚本) Mysq数据库dump备份/还原语法: mysq ...
- Mysql分库分表方案
Mysql分库分表方案 1.为什么要分表: 当一张表的数据达到几千万时,你查询一次所花的时间会变多,如果有联合查询的话,我想有可能会死在那儿了.分表的目的就在于此,减小数据库的负担,缩短查询时间. m ...
- MYSQL分库分表和不停机更改表结构
在MYSQL分库分表中我们一般是基于数据量比较大的时间对mysql数据库一种优化的做法,下面我简单的介绍一下mysql分表与分库的简单做法. .分库分表 很明显,一个主表(也就是很重要的表,例如用户表 ...
- 【分库、分表】MySQL分库分表方案
一.Mysql分库分表方案 1.为什么要分表: 当一张表的数据达到几千万时,你查询一次所花的时间会变多,如果有联合查询的话,我想有可能会死在那儿了.分表的目的就在于此,减小数据库的负担,缩短查询时间. ...
- 高可用Mysql架构_Mysql主从复制、Mysql双主热备、Mysql双主双从、Mysql读写分离(Mycat中间件)、Mysql分库分表架构(Mycat中间件)的演变
[Mysql主从复制]解决的问题数据分布:比如一共150台机器,分别往电信.网通.移动各放50台,这样无论在哪个网络访问都很快.其次按照地域,比如国内国外,北方南方,这样地域性访问解决了.负载均衡:M ...
随机推荐
- 编写高质量代码改善C#程序的157个建议——建议13: 为类型输出格式化字符串
建议13: 为类型输出格式化字符串 有两种方法可以为类型提供格式化的字符串输出.一种是意识到类型会产生格式化字符串输出,于是让类型继承接口IFormattable.这对类型来 说,是一种主动实现的方式 ...
- PLSQL_Developer 连接win7_64位oracle11g
window7系统 安装的64位 oracle11g,连接32位PLSQL_Developer 1 . 下载 PLSQL_Developer 9.0以上版本(绿色含汉化) 官方的 instantc ...
- 百度地图离线API及地图数据下载工具
全面介绍,请看下列介绍地址,改写目前最新版本的百度V2.0地图,已全面实现离线操作,能到达在线功能的95%以上 http://api.jjszd.com:8081/apituiguang/gistg. ...
- .Net Mvc 四种过滤器
一.授权过滤器:AuthorizationFilters 二.动作过滤:ActionFilters 三.响应过滤:ResultFilters 四.异常过滤:ExceptionFilters ===== ...
- WM_QUERYENDSESSION与WM_ENDSESSION
此文已由作者王荣涛授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 首先XP系统和Vista以后的系统,这两个消息的处理方式是不同的. XP系统 系统发送WM_QUERYEND ...
- Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'blog.t_blog.addTime' which is not functi
sql报错: Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Expression #1 of SELECT ...
- day02.2-列表内置方法
列表——list的定义:test = [1,12,9,"age",["zizai","jiapu"],"alex"] 特 ...
- 【大数据系统架构师】0.2 Linux基础
1. Linux基本环境 1.1 大数据Hadoop前置大纲讲解 1)Linux系统,基本命令 2)Java语言,JavaSE相关知识 3)MySQL基本的DML和DDL 1.2 常见Linux系统. ...
- Selenium3+python异常后截图(screenshot)
前言 在执行用例过程中由于是无人值守的,用例运行报错的时候,我们希望能对当前屏幕截图,留下证据. 在写用例的时候,最后一步是断言,可以把截图的动作放在断言这里,那么如何在断言失败后截图呢? 一.截图方 ...
- Unity---动画系统学习(2)---模型3种导入方式、人形动画介绍、切割动画
1. 介绍 Unity中导入的模型主要是由3DMAX.Maya等建模软件制作的,后缀为.fbx的文件. 博主在Unity Asset Store里面下载了一套官方免费的模型和动画. 和一套地图,分享给 ...