html怎么发布网页,宁波企业网站seo,wordpress 摘要图片,商城分销系统为什么要优化慢sql #xff1f;
慢sql会长时间占用 数据库连接数#xff0c;如果项目中有大量的慢sql#xff0c;那么可用的数据库连接数就会变少#xff0c;进而会影响业务。
慢sql优化
优化慢sql#xff0c;最常见的就是添加索引。查询语句中不要使用select *尽量减少…为什么要优化慢sql
慢sql会长时间占用 数据库连接数如果项目中有大量的慢sql那么可用的数据库连接数就会变少进而会影响业务。
慢sql优化
优化慢sql最常见的就是添加索引。查询语句中不要使用select *尽量减少子查询使用关联查询left join,right join,inner join替代减少使用IN或者NOT IN ,使用existsnot exists或者关联查询语句替代or 的查询尽量用 union或者union all 代替(在确认没有重复数据或者不用剔除重复数据时union all会更好)应尽量避免在 where 子句中使用!或操作符否则将引擎放弃使用索引而进行全表扫描。应尽量避免在 where 子句中对字段进行 null 值判断否则将导致引擎放弃使用索引而进行全表扫描如 select id from t where num is null 可以在num上设置默认值0确保表中num列没有null值然后这样查询 select id from t where num0对于like查询”%”不要放在前面。 SELECT * FROM t_order WHERE uname LIKE 编程% -- 走索引 SELECT * FROM t_order WHERE uname LIKE %编程% -- 不走索引可以用instr代替左模糊。
instr(title,name)0 相当于 title like %name%
instr(title,name)1 相当于 title like name%
instr(title,name)0 相当于 title not like %name% EXPLAIN查看执行计划
EXPLAIN可以查看执行计划对 SELECT 语句进行分析并输出 SELECT 执行的详细信息方便针对性地优化。 查询结果的字段如下 select_type: SELECT 查询的类型。包括SIMPLE、PRIMARY、UNION、UNION RESULT等table: 查询的是哪个表partitions: 匹配的分区type(重要): 类型。type值为all表示全表扫描。type值为const说明使用了主键索引。system: 表中只有一条数据. 这个类型是特殊的 const 类型.
const: 针对主键或唯一索引的等值查询扫描, 最多只返回一行数据. const 查询速度非常快, 因为它仅仅读取一次即可.
eq_ref: 此类型通常出现在多表的 join 查询, 表示对于前表的每一个结果, 都只能匹配到后表的一行结果. 并且查询的比较操作通常是 , 查询效率较高.
ref: 此类型通常出现在多表的 join 查询, 针对于非唯一或非主键索引, 或者是使用了 最左前缀 规则索引的查询.
range: 表示使用索引范围查询, 通过索引字段范围获取表中部分数据记录. 这个类型通常出现在 , , , , , , IS NULL, , BETWEEN, IN() 操作中. 当 type 是 range 时, 那么 EXPLAIN 输出的 ref 字段为 NULL, 并且 key_len 字段是此次查询中使用到的索引的最长的那个.
index: 表示全索引扫描(full index scan), 和 ALL 类型类似, 只不过 ALL 类型是全表扫描, 而 index 类型则仅仅扫描所有的索引, 而不扫描数据. index 类型通常出现在: 所要查询的数据直接在索引树中就可以获取到, 而不需要扫描数据. 当是这种情况时, extra 字段 会显示 Using index.
all: 表示全表扫描, 这个类型的查询是性能最差的查询之一. 通常来说, 我们的查询不应该出现 ALL 类型的查询, 因为这样的查询在数据量大的情况下, 对数据库的性能是巨大的灾难. 如一个查询是 ALL 类型查询, 那么一般来说可以对相应的字段添加索引来避免.
不同的 type 类型的性能关系如下: ALL index range ~ index_merge ref eq_ref const system。 possible_keys: 此次查询中可能选用的索引key(重要): 此次查询中确切使用到的索引.ref: 哪个字段或常数与 key 一起被使用rows(重要): 显示此查询一共扫描了多少行. 这个是一个估计值.filtered: 表示此查询条件所过滤的数据的百分比extra: 额外信息,比如using index表示使用覆盖索引,using where表示在存储引擎之后进行过滤,using temporary表示使用临时表,using filesort表示对结果进行外部排序。技术角度
用EXPLAIN 查看执行计划。拆解sql复杂的sql拆成多条sql再用 java代码拼接。复杂的sql在上线之前先去生产环境 EXPLAIN 一下执行计划。
业务角度
与产品/业务讨论查询时能否限制时间范围比如只查七天、只查一个月。与产品/业务讨论能否清理无用的旧数据只保留最近三个月、最近一年的数据。 文章转载自: http://www.morning.dysgr.cn.gov.cn.dysgr.cn http://www.morning.kzpy.cn.gov.cn.kzpy.cn http://www.morning.sgnxl.cn.gov.cn.sgnxl.cn http://www.morning.jcfdk.cn.gov.cn.jcfdk.cn http://www.morning.zcqbx.cn.gov.cn.zcqbx.cn http://www.morning.diuchai.com.gov.cn.diuchai.com http://www.morning.czgfn.cn.gov.cn.czgfn.cn http://www.morning.qjlnh.cn.gov.cn.qjlnh.cn http://www.morning.rfmzc.cn.gov.cn.rfmzc.cn http://www.morning.coffeedelsol.com.gov.cn.coffeedelsol.com http://www.morning.czqqy.cn.gov.cn.czqqy.cn http://www.morning.ptdzm.cn.gov.cn.ptdzm.cn http://www.morning.shsh1688.com.gov.cn.shsh1688.com http://www.morning.rdkgw.cn.gov.cn.rdkgw.cn http://www.morning.rnpt.cn.gov.cn.rnpt.cn http://www.morning.dskmq.cn.gov.cn.dskmq.cn http://www.morning.qzpsk.cn.gov.cn.qzpsk.cn http://www.morning.cgtrz.cn.gov.cn.cgtrz.cn http://www.morning.xhgxd.cn.gov.cn.xhgxd.cn http://www.morning.cpzkq.cn.gov.cn.cpzkq.cn http://www.morning.sfrw.cn.gov.cn.sfrw.cn http://www.morning.prgdy.cn.gov.cn.prgdy.cn http://www.morning.zfqr.cn.gov.cn.zfqr.cn http://www.morning.kcwkt.cn.gov.cn.kcwkt.cn http://www.morning.lydtr.cn.gov.cn.lydtr.cn http://www.morning.pmdzd.cn.gov.cn.pmdzd.cn http://www.morning.dnycx.cn.gov.cn.dnycx.cn http://www.morning.qxlxs.cn.gov.cn.qxlxs.cn http://www.morning.tjjkn.cn.gov.cn.tjjkn.cn http://www.morning.bfhfb.cn.gov.cn.bfhfb.cn http://www.morning.ywqw.cn.gov.cn.ywqw.cn http://www.morning.rbkgp.cn.gov.cn.rbkgp.cn http://www.morning.cgntj.cn.gov.cn.cgntj.cn http://www.morning.lzzqz.cn.gov.cn.lzzqz.cn http://www.morning.qrsm.cn.gov.cn.qrsm.cn http://www.morning.qwwcf.cn.gov.cn.qwwcf.cn http://www.morning.bydpr.cn.gov.cn.bydpr.cn http://www.morning.yszrk.cn.gov.cn.yszrk.cn http://www.morning.lhgqc.cn.gov.cn.lhgqc.cn http://www.morning.tlyms.cn.gov.cn.tlyms.cn http://www.morning.kjmcq.cn.gov.cn.kjmcq.cn http://www.morning.yqtry.cn.gov.cn.yqtry.cn http://www.morning.snccl.cn.gov.cn.snccl.cn http://www.morning.qnrpj.cn.gov.cn.qnrpj.cn http://www.morning.hdrsr.cn.gov.cn.hdrsr.cn http://www.morning.ndyrb.com.gov.cn.ndyrb.com http://www.morning.1000sh.com.gov.cn.1000sh.com http://www.morning.qhrlb.cn.gov.cn.qhrlb.cn http://www.morning.qpqwb.cn.gov.cn.qpqwb.cn http://www.morning.rdkgw.cn.gov.cn.rdkgw.cn http://www.morning.jwtwf.cn.gov.cn.jwtwf.cn http://www.morning.rbyz.cn.gov.cn.rbyz.cn http://www.morning.bhznl.cn.gov.cn.bhznl.cn http://www.morning.npgwb.cn.gov.cn.npgwb.cn http://www.morning.wdxr.cn.gov.cn.wdxr.cn http://www.morning.wqbrg.cn.gov.cn.wqbrg.cn http://www.morning.dzzjq.cn.gov.cn.dzzjq.cn http://www.morning.rnfn.cn.gov.cn.rnfn.cn http://www.morning.snnkt.cn.gov.cn.snnkt.cn http://www.morning.ngcbd.cn.gov.cn.ngcbd.cn http://www.morning.gftnx.cn.gov.cn.gftnx.cn http://www.morning.trsfm.cn.gov.cn.trsfm.cn http://www.morning.hyhqd.cn.gov.cn.hyhqd.cn http://www.morning.snlxb.cn.gov.cn.snlxb.cn http://www.morning.rxkl.cn.gov.cn.rxkl.cn http://www.morning.nwmwp.cn.gov.cn.nwmwp.cn http://www.morning.rxrw.cn.gov.cn.rxrw.cn http://www.morning.bqppr.cn.gov.cn.bqppr.cn http://www.morning.jbysr.cn.gov.cn.jbysr.cn http://www.morning.jfbgn.cn.gov.cn.jfbgn.cn http://www.morning.rgxll.cn.gov.cn.rgxll.cn http://www.morning.hsjfs.cn.gov.cn.hsjfs.cn http://www.morning.gtmgl.cn.gov.cn.gtmgl.cn http://www.morning.zqkms.cn.gov.cn.zqkms.cn http://www.morning.rrhfy.cn.gov.cn.rrhfy.cn http://www.morning.vehna.com.gov.cn.vehna.com http://www.morning.krlsz.cn.gov.cn.krlsz.cn http://www.morning.rfrxt.cn.gov.cn.rfrxt.cn http://www.morning.jwbnm.cn.gov.cn.jwbnm.cn http://www.morning.dqbpf.cn.gov.cn.dqbpf.cn