Mysql Optimization
Mr_HanSong
这个作者很懒,什么都没留下…
展开
-
MySQL Sending data导致查询很慢的问题详细分析
【问题现象】使用sphinx支持倒排索引,但sphinx从mysql查询源数据的时候,查询的记录数才几万条,但查询的速度非常慢,大概要4~5分钟左右【处理过程】1)explain首先怀疑索引没有建好,于是使用explain查看查询计划,结果如下:从explain的结果来看,整个语句的索引设计是没有问题的,除了第一个表因为业务需要进行整转载 2015-04-22 14:48:44 · 1341 阅读 · 0 评论 -
mysqldump造成Buffer Pool污染的研究
前言:最近Oracle MySQL在其官方Blog上贴出了 5.6中一些变量默认值的修改。其中innodb_old_blocks_time 的默认值从0替换成了1000(即1s)关于该参数的作用摘录如下:how long in milliseconds (ms) a block inserted into the old sublist must stay there after转载 2014-06-25 15:46:14 · 902 阅读 · 0 评论 -
分页优化
转载至原文:http://imysql.com/2014/07/26/mysql-optimization-case-paging-optimize.shtml通常,我们会采用ORDER BY LIMIT start, offset 的方式来进行分页查询。例如下面这个SQL:SELECT * FROM `t1` WHERE ftype=1 ORDER BY id DESC LIMIT转载 2015-04-21 17:42:17 · 621 阅读 · 0 评论 -
Mysql是否需要开启query cache
Query Cache(查询缓存,以下简称QC)存储SELECT语句及其产生的数据结果,特别适用于:频繁提交同一个语句,并且该表数据变化不是很频繁的场景,例如一些静态页面,或者页面中的某块不经常发生变化的信息。QC有可能会从InnoDB Buffer Pool或者MyISAM key buffer里读取结果。由于QC需要缓存最新数据结果,因此表数据发生任何变化(INSERT、UPD转载 2015-05-18 11:59:39 · 1575 阅读 · 0 评论 -
eq_range_index_dive_limit决定COST估算方式
在MySQL的官方手册上有这么一句话:the optimizer can estimate the row count for each range using dives into the index or index statistics.这是在说: 优化器为每一个范围段(如“a IN (10, 20, 30)”是等值比较, 括3个范围段实则简化为3个单值,分别是10,20,3转载 2015-10-07 11:28:55 · 2040 阅读 · 0 评论 -
MySQL索引选择不正确并详细解析OPTIMIZER_TRACE格式
一 表结构如下: CREATE TABLE t_audit_operate_log ( Fid bigint(16) AUTO_INCREMENT, Fcreate_time int(10) unsigned NOT NULL DEFAULT '0', Fuser varchar(50) DEFAULT '', Fip bigint(16) DEFAULT NULL转载 2015-10-07 17:44:02 · 4927 阅读 · 0 评论 -
MySQL之SQL分析三部曲实际案例
-------------------------------------------------------------------------------------------------正文-----------------------------------------------------------------------------------------------------转载 2015-10-07 17:53:29 · 2113 阅读 · 0 评论