注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Oracle、MySQL资料及经验

.

 
 
 

日志

 
 

我的OLTP sql优化方法  

2017-01-06 15:11:55|  分类: 优化 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
OLTP sql优化方法
1. 避免多行笛卡尔积(两结果集只有几行的笛卡尔积是允许的)。
2. 消灭大表全表扫描   根据查询条件未建立索引的,建立合适的索引;隐式转换导致不能走索引的,改为合适的数据类型;书写格式导致不能用索引的,改为合适的格式,如列-10>20格式的,改为列>20+10
3. 查看有没有更优的索引  在查询条件列上新建或提示使用更优的索引  
4. 增加不影响查询结果的强过滤条件  例如查询的数据同时满足其他强过滤条件,于是可以在where条件中加入该过滤条件。
5. 减少不影响查询结果的过滤条件  例如where中的or条件,如果不影响查询结果,则应该去掉。
6. 避免多行子查询  可通过把子查询语句拉到外层,形成关联查询来解决。
7. 其他sql改写  例如通过限制参与运算的行数,避免更多数据参与运算,去掉主键和唯一列的distinct。
8. 减少表和索引碎片  如果表和索引中碎片太多也影响sql执行效率,DBA通过数据库命令来解决。
9. 迁移表中无用及历史数据  Oracle和MySQL的生产库中,只该存放核心数据,小而精,避免存放大字段,其他闲杂数据都不该进来,其他非核心数据或大字段放到非核心库中或NoSQL库中。

  评论这张
 
阅读(16)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017