
mysql
文章平均质量分 79
weixin_42116268
这个作者很懒,什么都没留下…
展开
-
mysql 5.7 官网资料整理
14.1.2 InnoDB表的最佳做法 1.经常查询的一列或者多列设置主键,如果 如果没有明显的主键,则指定一个 自动递增的主键 2.为了加快join查询,最好定义外键依赖,并且连接字段的数据类型相同 3.关闭自动提交。 4.DML操作分组使用事务,...原创 2018-05-02 14:13:22 · 168 阅读 · 0 评论 -
mysql SELECT 查询优化
8.2.1 Optimizing SELECT Statements1.mysql从磁盘上查找数据通常小于10ms,理论上1s中可以找到100片数据2.为了SELECT ... WHERE加快查询速度,在WHERE子句中使用的列上设置索引,对于join不同表的查询,索引尤其重要3.避免查询时函数的使用,查询出来的每一行结果要进行函数调用4.尽量减少全表扫描次数5.通过ANALYZE TABLE命令...原创 2018-05-03 11:17:17 · 307 阅读 · 0 评论 -
mysql where 语句优化
where语句: 1. 在查询中先读取所有常量表,常量表包含一下两种类型:①空表或者只有一条记录的表②where查询的条件为表的主键或者唯一索引,有索引的列与常量比较并且是非空2. join查询如果 ORDER BY和GROUP BY子句来自同一个表,那么在查询时首先选择该表。3. 如果有一个ORDER BY子句和一个不同的GROUP BY子句,或者如果 ORDER...原创 2018-05-03 16:34:31 · 741 阅读 · 0 评论 -
mysql 优化
people表中(zipcode,lastname,firstname)构成一个索引。如果没有使用索引下推技术,则MySQL会通过zipcode='95054'从存储引擎中查询对应的元祖,返回到MySQL服务端,然后MySQL服务端基于lastname LIKE '%etrunia%'和address LIKE '%Main Street%'来判断元祖是否符合条件。如果使用了索引下推技术,则MYS...原创 2018-05-04 11:11:58 · 106 阅读 · 0 评论 -
msyql 范围读取优化
8.2.1.10(多范围读取优化)MRR:当表很大并且没有存储在存储引擎的缓存中时,使用二级索引上的范围扫描读取行可能导致许多随机磁盘访问基表。通过磁盘扫描多范围读取(MRR),MySQL通过首先扫描二级索引并收集相关行的,尝试减少范围扫描的随机磁盘访问次数。然后对键进行排序,最后使用主键的顺序从基表中检索行。MRR目的是减少随机磁盘访问的次数,而不是实现基本表数据的更多顺序扫描。8.2.1.13...原创 2018-05-04 17:47:56 · 127 阅读 · 0 评论