整理通常的SQL SERVER優化流程

2022-01-31 21:12:25 字數 686 閱讀 4319

1、sql指令碼或儲存過程,跟蹤儲存過程的執行時長和reads,不正常的情況下,表明語句、儲存過程有優化空間,通常是未加索引,或者索引的字段公升降序進行呼叫;

a:指令碼是否需要新增或復用現有索引;

b:指令碼是否可能對排序調整;

c:改寫指令碼的寫法;或者指令碼中是否有對大表查詢重複資料的情況;

(耗時超過5000ms、或者reads超過10萬的情況下,都考慮有優化空間,視實現查詢的資料量而定)

d:檢視查詢分析器中的訊息選項卡,是否有表掃瞄的情形;對哪張表進行了掃瞄就針對相應的條件做處理;

e:查詢時將「包括客戶端的實際執行計畫」選上,多數情況下會自動給出優化建議;評估頻次、收益是否匹配,若匹配則建立索引;若要新建的索引可以在現有索引中擴充套件復用,則直接使用現有索引進行擴充套件復用;

f:動態查詢語句由於動態構建查詢條件的原因,但是通過反寫查詢條件結合or,可以將動態條件常規編寫。

g:解決執行計畫中的keylookup,通常是已走索引,但是所需要的字段需要從表中按主鍵列逐個取出,為相應的索引,新增相關包含性列即可以解決該問題,有乙個場景,走索引,read約202萬,加入包含性列後,下降到1500次read。

2、**:

a:**是否有遍歷中反覆呼叫資料庫查詢的情形;如果有,在**層面,將多次查詢更改為主查詢,然後在程式內部實現分組;

b:對於**,多表聯合一次性查詢的效能,要遠好於每張表單獨查詢;

sql server效能調優

我踩過的聽過的那些坑 第24 24周 資料庫維護 database maintenance 第23 24周 臨時資料庫 tempdb 第22 24周 等待和i o延遲統計 第21 24周 效能監控 pal工具 第20 24周 死鎖 deadlocking 第19 24周 鎖公升級 lock esca...

SQL Server效能調優系列

這是關於sql server調優系列文章,以下內容基本涵蓋我們日常中所寫的查詢運算的分解以及調優內容項,皆為原創.資料庫技術經驗篇 sql server調優系列基礎篇 sql server調優系列基礎篇 常用運算子總結 sql server調優系列基礎篇 聯合運算子總結 sql server調優系列...

SQL Server效能調優系列

這是關於sql server調優系列文章,以下內容基本涵蓋我們日常中所寫的查詢運算的分解以及調優內容項,皆為原創.sql server調優系列基礎篇 sql server調優系列基礎篇 常用運算子總結 sql server調優系列基礎篇 聯合運算子總結 sql server調優系列基礎篇 並行運算總...