1、SQL脚本或存储过程,跟踪存储过程的执行时长和reads,不正常的情况下,表明语句、存储过程有优化空间,通常是未加索引,或者索引的字段升降序进行调用;

  A:脚本是否需要新增或复用现有索引;

B:脚本是否可能对排序调整;

C:改写脚本的写法;或者脚本中是否有对大表查询重复数据的情况;

  (耗时超过5000ms、或者reads超过10万的情况下,都考虑有优化空间,视实现查询的数据量而定)

  D:查看查询分析器中的消息选项卡,是否有表扫描的情形;对哪张表进行了扫描就针对相应的条件做处理;

  E:查询时将“包括客户端的实际执行计划”选上,多数情况下会自动给出优化建议;评估频次、收益是否匹配,若匹配则创建索引;若要新建的索引可以在现有索引中扩展复用,则直接使用现有索引进行扩展复用;

  F:动态查询语句由于动态构建查询条件的原因,但是通过反写查询条件结合OR,可以将动态条件常规编写。

  G:解决执行计划中的KeyLookup,通常是已走索引,但是所需要的字段需要从表中按主键列逐个取出,为相应的索引,新增相关包含性列即可以解决该问题,有一个场景,走索引,Read约202万,加入包含性列后,下降到1500次read。

2、代码:

A:代码是否有遍历中反复调用数据库查询的情形;如果有,在代码层面,将多次查询更改为主查询,然后在程序内部实现分组;

  B:对于代码,多表联合一次性查询的性能,要远好于每张表单独查询;

整理通常的SQL SERVER优化流程的更多相关文章

  1. 深入SQL Server优化【推荐】

    深入sql server优化,MSSQL优化,T-SQL优化,查询优化 十步优化SQL Server 中的数据访问故事开篇:你和你的团队经过不懈努力,终于使网站成功上线,刚开始时,注册用户较少,网站性 ...

  2. SQL Server 优化器特性导致的内存授予相关BUG

    我们有时会遇到一些坑,要不填平,要不绕过.这里为大家介绍一个相关SQL Server优化器方面的特性导致内存授予的相关BUG,及相关解决方式,也顺便回答下邹建同学的相关疑问. 问题描述 一个简单的查询 ...

  3. SQL Server优化器特性-隐式谓词

    我们都知道,一条SQL语句提交给优化器会产生相应的执行计划然后执行输出结果,但他的执行计划是如何产生的呢?这可能是关系型数据库最复杂的部分了.这里我为大家介绍一个有关SQL Server优化器的特性- ...

  4. [SQL Server优化]善用系统监视器,确定系统瓶颈

    原文:[SQL Server优化]善用系统监视器,确定系统瓶颈 来自: http://hi.baidu.com/solorez/blog/item/f82038fa0e71b78d9e51468c.h ...

  5. SQL Server 优化存储过程的七种方法

    原文:SQL Server 优化存储过程的七种方法 优化存储过程有很多种方法,下面介绍最常用的7种. 1.使用SET NOCOUNT ON选项 我们使用SELECT语句时,除了返回对应的结果集外,还会 ...

  6. SQL Server优化的方法

    SQL Server优化的方法<一>   查询速度慢的原因很多,常见如下几种:   1.没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)   2.I/O吞吐量小,形成了 ...

  7. 【SQL Server 优化性能的几个方面】(转)

    转自:http://blog.csdn.net/feixianxxx/article/details/5524819     SQL Server 优化性能的几个方面 (一).数据库的设计 可以参看最 ...

  8. SQL Server优化技巧——如何避免查询条件OR引起的性能问题

    之前写过一篇博客"SQL SERVER中关于OR会导致索引扫描或全表扫描的浅析",里面介绍了OR可能会引起全表扫描或索引扫描的各种案例,以及如何优化查询条件中含有OR的SQL语句的 ...

  9. SQL Server优化技巧——如何避免查询条件OR引起的性能问题

    原文:SQL Server优化技巧--如何避免查询条件OR引起的性能问题 之前写过一篇博客"SQL SERVER中关于OR会导致索引扫描或全表扫描的浅析",里面介绍了OR可能会引起 ...

随机推荐

  1. linux下使用rzsz实现文件的上传和下载

    新搞的云服务器用SecureCRT不支持上传和下载,没有找到rz命令.记录一下如何安装rz/sz命令的方法. 一.工具说明 在SecureCRT这样的ssh登录软件里, 通过在Linux界面里输入rz ...

  2. 使用postman上传excel文件测试导入excel

    今日思语:城市的生活很快,有时学会让自己慢下来,慢慢来 对于做一些文件上传操作时,一般我们是直接在前端页面加入类型为file的input标签,也可以使用postman来进行文件的上传测试,如下: po ...

  3. go 学习 (五):goroutine 协程

    一.goroutine 基础 定义 使用者分配足够多的任务,系统能自动帮助使用者把任务分配到 CPU 上,让这些任务尽量并发运作,此机制在Go中称作 goroutine goroutine 是 Go语 ...

  4. 持续集成学习5 jenkins自动化测试与构建

    一.jenkins参数 1.主要参数类型 2.触发构建参数 3.参数值的使用 4.给git仓库配置参数,让其构建的时候可以选择分支 5.配置password参数 6.添加Choice参数 7.其它好用 ...

  5. webuploader解决大文件断点续传

    文件夹数据库处理逻辑 public class DbFolder { JSONObject root; public DbFolder() { this.root = new JSONObject() ...

  6. Nodejs中的JavaScript

    一.Ecmascript ①基本语法:if var function Object Array等 ②特别注意:Node.js中没有DOM和BOM 二.核心模块: 1.Node.js为JavaScrip ...

  7. [RN] React Native 使用 react-native-vector-icons 图标显示问号

    我在第一次使用 react-native-vector-icons 时图标显示问号 后来在网上查了很多文章,发现原因有两个 1)安装完 react-native-vector-icons 后,没有li ...

  8. HDU 1542.Atlantis-线段树求矩形面积并(离散化、扫描线/线段树)-贴模板

    好久没写过博客了,这学期不是很有热情去写博客,写过的题也懒得写题解.现在来水一水博客,写一下若干年前的题目的题解. Atlantis Time Limit: 2000/1000 MS (Java/Ot ...

  9. GoCN每日新闻(2019-10-08)

    GoCN每日新闻(2019-10-08) <premenlo';font-size:9.0pt;">GoCN每日新闻(2019-10-08) 1. Go 构建高性能数据库中间件: ...

  10. 18年今日头条笔试第一题题解:球迷(fans)

    其实本题是加强版,原数据是100*100的,老师为了尊重我们的智商加成了3000*3000并进行了字符串处理…… 上原题~ 球迷 [问题描述] 一个球场C的球迷看台可容纳M*N个球迷.官方想统计一共有 ...