none
DB I/O問題 RRS feed

  • 問題

  • Dear Sir:
    OS:Win2000 + SP4  DBTongue TiedQL2000 + SP4
    H/W P4 2.0 G *4 , 5GB RAM  HDD*16  Raid 1+0

    目前有觀察到資料庫 Read & Write I/O 過高,是否有好的建意可改善
    ,如復原模式可調整為簡易....等設定。

    2007年11月9日 上午 09:54

解答

  • I/O 過高和記憶體不足比較有關。

    如果查詢設計不良,又沒有適當的使用索引,造成 TABLE SCAN 過高的話,I/O 也會變大。

     

    2007年11月11日 下午 02:16
    版主
  • I/O過高可能是你的查詢效能不太好,建議你從幾個方向去處理:

     

    1、使用SQL Profiler檢查所有的SQL語法看是否有不良的查詢(比如說Table Scan)

    2、如果SQL的部份皆已調整還是無效,建議你把資料筆數過大的部份使用分割資料表把資料分散。

    3、利用檔案群組的方式將資料分散到多個資料檔案中

    4、建議把TempDB放置到另一個獨立的硬碟中

     

    其外你也需要針對前端的程式做最佳化,要不然可能過一陣子類似的情況還是會出現的。

    2007年11月12日 上午 05:59

所有回覆

  • 資訊不足以判斷問題的原因,可能的原因很多:資料庫或資料表的設計不良、沒有正規化、正規化過頭、Fill Factor 過小....
    2007年11月9日 下午 01:37
    版主
  • I/O 過高和記憶體不足比較有關。

    如果查詢設計不良,又沒有適當的使用索引,造成 TABLE SCAN 過高的話,I/O 也會變大。

     

    2007年11月11日 下午 02:16
    版主
  • I/O過高可能是你的查詢效能不太好,建議你從幾個方向去處理:

     

    1、使用SQL Profiler檢查所有的SQL語法看是否有不良的查詢(比如說Table Scan)

    2、如果SQL的部份皆已調整還是無效,建議你把資料筆數過大的部份使用分割資料表把資料分散。

    3、利用檔案群組的方式將資料分散到多個資料檔案中

    4、建議把TempDB放置到另一個獨立的硬碟中

     

    其外你也需要針對前端的程式做最佳化,要不然可能過一陣子類似的情況還是會出現的。

    2007年11月12日 上午 05:59