七 15 [MySQL优化案例]系列 — RAND()优化 发布时间:2014 年 7 月 15 日 发布者: OurMySQL 众所周知,在MySQL中,如果直接 ORDER BY RAND() 的话,效率非常差,因为会多次执行。事实上,如果等值查询也是用 RAND() 的话也如此,我们先来看看下面这几个SQL的不同执行计划和执行耗时。 继续阅读全文 →
六 10 SQL常见的可优化点 发布时间:2014 年 6 月 10 日 发布者: OurMySQL 从以下角度考虑常见的优化点:索引相关、高效分页、高效地利用primary key、高效join。 继续阅读全文 →
五 27 autocommit=0引起的业务hang住 发布时间:2014 年 5 月 27 日 发布者: OurMySQL 背景: 有用户报告一个普通的select 语句被hang住了,执行超时。查明之后发现是autocommit使用不当导致。 这里将case简化,说明复现步骤及原因。 继续阅读全文 →
五 10 MySQL整型数据溢出的处理策略 发布时间:2014 年 5 月 10 日 发布者: OurMySQL 今天接到一个朋友电话说是觉的数据库被别人更改了,出现数据不对的问题 。经过很久的排查是数据类型溢出了(发生问题的版本是MySQL 5.1)。后来通过给朋友那边把MySQL 5.1升级到MySQL 5.5去解决这个问题。 这也让我有兴趣去了解一下MySQL不同版本数据类型溢出的处理机制。 继续阅读全文 →
四 29 记录一次truncate操作数据恢复 发布时间:2014 年 4 月 29 日 发布者: OurMySQL 实际线上的场景比较复杂,当时涉及了truncate, delete 两个操作,经确认丢数据差不多7万多行,等停下来时,差不多又有共计1万多行数据写入。 这里为了简单说明,只拿弄一个简单的业务场景举例。 继续阅读全文 →
四 07 用MySQL Slow Log解决MySQL CPU占用高的问题 发布时间:2014 年 4 月 7 日 发布者: OurMySQL 在Linux VPS系统上有时候会发现MySQL占用CPU高,导致系统的负载比较高。这种情况很可能是某个SQL语句执行的时间太长导致的。优化一下这个SQL语句或者优化一下这个SQL引用的某个表的索引一般能解决问题。 继续阅读全文 →
四 07 InnoDB还是MyISAM 再谈MySQL存储引擎的选择 发布时间:2014 年 4 月 7 日 发布者: OurMySQL 两种类型最主要的差别就是Innodb 支持事务处理与外键和行级锁.而MyISAM不支持.所以MyISAM往往就容易被人认为只适合在小项目中使用。 我作为使用MySQL的用户角度出发,Innodb和MyISAM都是比较喜欢的,但是从我目前运维的数据库平台要达到需求:99.9%的稳定性,方便的扩展性和高可用性来说的话,MyISAM绝对是我的首选。 继续阅读全文 →
四 07 MYSQL表无法修复的解决办法 发布时间:2014 年 4 月 7 日 发布者: OurMySQL 我服务器搬家的时候,频繁出现is marked as crashed and last (automatic?),就是先修复然后导出再导入MYSQL修复好的 继续阅读全文 →
二 18 MySQL数据库优化实践 发布时间:2014 年 2 月 18 日 发布者: OurMySQL 最近一段时间,我们整理了一些关于Percona,Linux,Flashcache,硬件设备的优化经验,分享给大家。 继续阅读全文 →