赞
踩
查询优化器提示( hint ) : 一般指改变 mysql 优化器的执行计划, 除非业务需要, 不建议这样做。
查询优化器提示( hint )
1. HIGH_PRIORITY 、 LOW_PRIORITY
HIGH_PRIORITY: 提示mysql该语句优先执行
LOW_PRIORITY: 提示mysql该语句处于等待执行, 有可能出现一直等待状态
这两个提示针对表级锁有用, 不要使用在Innodb中, 由于优先级排序操作, 禁用并发, 严重影响性能。
这两个提示只是控制mysql访问数据的队列顺序, 不会影响具体的请求对资源的控制
2. DELAYED
对于 INSERT 和 REPLACE 有效。
mysql 会将提示语句立即返回给客户端, 并将插入的行数据放入到缓冲区, 然后在表空闲的时候哦批量假数据写入。
并不是所有的存储引擎都支持, 并且可能影响 LAST_INSERT_ID() 的功能。
3. STRAIGHT_JOIN
在数据量大的联表查询中灵活运用的话,直接影响关联顺序, 减少statistics的时间, 能大大缩短查询时间
STRAIGHT_JOIN功能同join类似,但能让左边的表来驱动右边的表,能改表优化器对于联表查询的执行顺序。
4. SQL_SMALL_RESULT 、 SQL_BIG_RESULT
SQL_SMALL_RESULT: 提示优化器结果集比较小, 可以将结果放在内存中的索引临时表&#x
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。