首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

數據庫性能優化十大實戰策略

     編輯:關於SqlServer

前言

數據庫存取會降低系統性能,但現代網站離不開數據庫——它提供大容量、多樣性、個性化支撐。優化關鍵在於權衡與技巧。

十大優化策略

  1. 務必建立合理索引
    合理索引能立即顯著提升整體性能。參考 SQL 性能調優書籍,根據查詢模式設計索引,並根據索引優化查詢語句。
  2. 優先使用存儲過程
    存儲過程預編譯,運行更快。讓數據庫只返回所需數據,避免大量數據傳輸到 ASP 過濾。充分發揮數據庫引擎能力,獲取最精準結果。
  3. 選用 SQL Server 而非 Access
    Access 為文件式數據庫,多用戶性能差。連接採用 OLEDB 與無 DSN 方式,並發性能更優。
  4. 避免 DAO/RDO,改用 ADO
    DAO/RDO 針對單用戶系統,ADO 專為 Web 應用設計。
  5. 合理設置游標類型與鎖定模式
    不同游標/鎖定導致 ASP 操作數據庫方式不同,速度差異大,尤其大數據量時。僅遍歷數據用默認游標(前進、只讀)性能最佳。
  6. 減少 ADO 字段變量重複引用
    引用 ADO 字段變量消耗較多 CPU。同一頁多次使用某字段時,先存入本地變量,再直接調用本地變量計算顯示。
  7. 謹慎緩存 Connection 對象
    放入 Application 導致所有頁面爭搶同一連接;放入 Session 則每用戶一連接,削弱連接池效果,增加服務器壓力。建議每頁創建釋放 ADO 對象,利用 IIS 內建連接池,雖每頁增創建釋放開銷但極高效。
  8. 避免 SELECT *,明確列出所需字段
    表字段多時,SELECT * 會檢索大量無用數據。字段少時差異不明顯,但幾十字段表必須老老實實寫 SELECT id,name,age... FROM mytable。
  9. 及時關閉記錄集與連接對象
    兩者佔用大量系統資源,數量有限。未關閉會導致運行越來越慢甚至死機。正確關閉:
    MyRecordSet.Close
    Set MyRecordSet = Nothing
    Set MyConnection = Nothing
  10. 採用 OLEDB 直連提升性能
    ODBC/DSN 連接較慢。OLEDB 位於應用與 ODBC 之間,ADO 在 OLEDB 之上。直接連 OLEDB 繞過 ODBC,提升服務端性能。
    SQL Server 7 OLEDB 連接串示例:
    Provider=SQLOLEDB.1;Password=mypassWord;Persist Security Info=True;User ID=myuid;Initial Catalog=mydbname;Data Source=myserver;Connect Timeout=15
    關鍵在 Provider=SQLOLEDB.1。測試表明 OLEDB 連接顯著優於 DSN/DSN-less 方式。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved