資料庫效能調優 三

2022-01-31 06:34:26 字數 2116 閱讀 3841

影響資料庫效能的主要因素

伺服器硬體的因素:

_伺服器數量

_記憶體 cpu 磁碟

cpu:單台雙cpu

磁碟:高轉速(越高越高,1w以上)

硬碟的插槽支援雙通道,記憶體型號一樣.

網路環境:盡可能組建分布式的平台,使用raid

資料庫設計

資料查詢

伺服器硬體及網路的建議

增加伺服器的數量,組建分布式平台

增加cpu數量

增加記憶體容量和頻率,開啟雙通道等

硬碟更換為多塊、高速(10000+轉)的硬碟

網路選用千兆以上頻寬,有可能的話可選用光線

網路線路最好專線專用,避免其他網路資料(如bt)占用

資料庫設計原則的建議

規範命名

三少原則(資料表\字段\組合主鍵)

控制字段引用

庫表的重複控制

併發控制(鎖)

必要的討論

資料小組的審核

標頭檔案的處理

資料庫設計工作的建議

分類拆分資料量大的表(減少單錶記錄數)

適當考慮分布式分割槽

合理的索引設計

資料操作的優化

資料庫引數的調整

避免長事務(分解事務,減少負荷,提高效率)

適當超前(考慮未來擴充套件)

必要的工具

資料庫效能調優的原則

盡可能排除資源瓶頸(cpu ram i/o network)

盡可能減少資料庫的i/o

盡可能使用index seek,避免使用index scan

減少阻塞 死鎖和不恰當的索引

盡可能不用游標

盡可能不用觸發器而使用儲存過程

資料查詢優化的方法

減少資料庫訪問量和資料傳輸量

避免使用不相容的資料型別

避免在where子句中的「=」左側使用表示式

避免使用!=或<>、is null或is not null、in或not in

避免在索引欄位中使用非字元打頭的搜尋,如』%abc%』

盡可能使用union方案替換or條件

盡量考慮where及order by子句間的順序按索引順序

盡量使用數字型字段

盡量使用》=替換》

合理使用exists和not exists

合理使用檢視(巢狀檢視巢狀越多,效能越差.另外尤其是索引檢視盡量避免使用巢狀檢視.)

合理演算法的使用

必要時強制使用索引

適當考慮物理分開儲存

使用合適的工具

sql server 2005的幾個特性

varchar(max)/nvarchar(max)/varbinary(max),分別替換已有的text、ntext、image

xml型別

計算欄位的持久化

索引附加字段

索引檢視,可對檢視建立索引,提高效率,但是該檢視不能有檢視引用

2005支援動態指示top的數量

行號,注意最後面再跟order by的情況。row_number / rank / dense_rank / ntile

臨時檢視with(實現遞迴查詢)

分割槽partition

demo

通過執行計畫來檢視開銷在那些方面

like "2006%" 避免使用like "%2006"方式的

在 2000中select top @count是不允許的.

select top (@count)在sql 2005中新增括弧即可.

分頁查詢:

select * from(

select row_number() over(order by id desc) as rowid * from news

) tb

where tb.rowid between 10 and 18

)

剖析資料庫效能調優技術之索引調優

剖析資料庫效能調優技術之索引調優 2008 1 28 9 37 00 by iulu 一 概述 隨著資料庫在各個領域的使用不斷增長,越來越多的應用提出了高效能的要求。資料庫效能調優是知識密集型的學科,需要綜合考慮各種複雜的因素 資料庫緩衝區的大小 索引的建立 語句改寫等等。總之,資料庫效能調優的目的...

資料庫調優

1 資料庫調優 計算機硬體調優 資料庫物件的放置策略 利用資料庫分割槽技術,均勻地把資料分布在系統的磁碟中,平衡i o 訪問,避免i o 瓶 頸 使用磁碟硬體優化資料庫 基本表設計優化 第三正規化的基本特徵 是非主鍵屬性只依賴於主鍵屬性。優點 一是能消除 冗餘資料 節省磁碟儲存空間 二是有良好的資料...

資料庫調優

檢視資料庫連線個數 show global variables like max connections 資料庫連線不上可能是max connections數太少了 增加連線數 配置檔案 etc my.cnf.d server.cnf mysqld mysqld max connections 10...