由于分库分表的原因,和开发规定了不能使用 表表JOIN 语句。因此,我们要将 JOIN 语句的转化成使用 IN 来做。如现在有 表 A(a_id, c_a)c_a有普通索引,表 B(b_id, c_a...
MySQL应用架构优化-实时数据处理(2)
22.4.7. 初始化Storm
这边我们在(10.10.10.21 storm_1、10.10.10.22 storm_2、10.10.10.23 storm_3)这三台部署storm。
...
MySQL应用架构优化-实时数据处理(1)
1.1. 场景
在和开发人员做优化的时候,讨论最多的应该是结合应用场景编写出合适的SQL。并培训开发应该如何编写SQL让MySQL的性能尽量好。但是有一些的场景对于SQL的优化是行不通的。
打...
MySQL行转列
1.1. 前言
公司的多个系统间的通信是通过接口来实践的。由于历史的遗留的原因,从其他系统传来的订单和商品的信息是一个字符串,在我们这边 "商品ID" 存储的方式是使用 逗号(',')隔开的。最近要...
github在线更改mysql表结构工具gh-ost
GitHub正式宣布以开源的方式发布gh-ost:GitHub的MySQL无触发器在线更改表定义工具!
gh-ost是GitHub最近几个月开发出来的,目的是解决一个经常碰到的问题:不断变化的产...
定时消息通知
1.1. 背景
系统的有些业务时需要定时发消息通知。但是这些消息又不是有规律可循的。比如,商品的优惠是限时的。在之前的实现是有一个排查任务每5分钟都去去商品表中查询哪些有做活动的商品,并比较是否过了...
使用zookeeper让定时任务串行执行
1.1. 前言
由于系统历史问题,在系统中有着许多的定时任务。小到每5分钟一次,大到每天一次。由于这种定时任务的无限增多,当达到时间的最小公倍数的时候就会许多个任务同时跑起来,这样就会让MySQL发...
binlog归档
1.1. 前言
对数据库数据进行备份都是日常的工作(虽然都是自动做的),备份中有一项必备的那就是binglog了。在工作中一般这些备份都会保留一段时间后归档。时间长了归档的数据将会非常大。这时候我们...
xtrabackup开启新实例
1.1. 前言
之前有几位朋友刚刚接触MySQL备份工具xtrabackup,想将使用这个工具使用在自己的生产环境上。他们使用这用具恢复数据的使用,总是按官网的,在恢复的最后都会执行--copy-b...
分区表的使用
1.1. 场景
在每个系统中都会生成一些日志,往往有些日志都是需要记录的,比如:生成订单的过程的一些记录、某个账号活动的一些信息。这样一来每天生成的日志会很多,而且还会生成到数据库中。
像这些...
zabbix-3.0导入percona模板报错
1.1. 错误
Import failed
Invalid XML tag "/zabbix_export/date": "YYYY-MM-DDThh:mm:ssZ" is e...
MySQL多层级结构-区域表树改造
1.1. 前言
之前我们的地区表的层级结构,可以说是一颗数树的祖先是 '中国'。在一个树的结构下当数据量大的时候要更新或添加一个地区的时候跟新的数据量平均是半个表。这看以来显然是不合理的。
1.2...
MySQL 5.7 坑爹参数 – log_timestamps
官网原话:
This variable was added in MySQL 5.7.2. Before 5.7.2, timestamps in log messages were writt...
MySQL多层级结构-区域表使用树
1.1. 前言
前面我们大概介绍了一下树结构表的基本使用。在我们项目中有好几块有用到多层级的概念。下面我们哪大家都比较熟悉的区域表来做演示。
1.2. 表结构和数据
区域表基本结构,可能在你的项...
MySQL多层级结构-树搜索
1.1. 背景
基本上在每个系统中都有那么几张表是自关联父子关系的结构。往往有很多人都是使用pid来做关联。在刚进入IT行业时使用CAKEPHP框架编写WEB的时候,使用它里面的一个ACL plug...
15