看板 Database 關於我們 聯絡資訊
(針對 SQL 語言的問題,用這個標題。請用 Ctrl+Y 砍掉這行) 資料庫名稱:MS SQL SERVER 2008 資料庫版本:WINDWOS SERVER2008 R2 內容/問題描述: 想問一下,常常用好幾個資料庫的資料表聯集做事 但有時不明原因好好的,突然會變很慢 比如光是 SELECT * FROM [TABLE] 就要2分鐘 平常只要8秒左右 然後要是用了 WHERE ID IN (XXX) 則跑很久跑不出東西(超過半小時) 但正常時不會這樣 重開機還是一樣 過幾天不明就理又會好 GOOGLE都不知要查什麼 想要問這會是哪方面的問題呢? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 106.1.227.232 ※ 文章網址: http://www.ptt.cc/bbs/Database/M.1411042117.A.049.html
scpisces: 查看那個資料表的索引怎麼建的 09/19 02:24
scpisces: 最近遇到和原PO類似的問題 09/19 02:25
scpisces: 執行預存程序約20秒,但報表跑了2分鐘還是出不來 09/19 02:26
scpisces: 後來才發現是之前非叢集索引建不好 09/19 02:28
scpisces: 移除後,執行預存程序5秒,報表也飛快的跑出來了 09/19 02:29
a926: 先查你的RAM使用狀況,因為你資料查詢時會預載至RAM中 09/19 13:27
a926: RAM接近滿載時,執行速度會變慢 09/19 13:28
a926: 另外可以參考執行計畫去建你Table的索引 09/19 13:28
GoalBased: 同樣的語法時快時慢應該不是索引問題吧 09/19 18:56
GoalBased: 也推樓上的 看適不適電腦不夠力 09/19 19:28
rockchangnew: 更新統計吧。執行sp_updatestats看看 09/19 19:50
感謝樓上各位的推文,結果最後我情急之下將資料表 複製到另一個資料庫就可以用了 ....不過還是不明原因 ※ 編輯: lepin2001 (106.1.227.232), 09/20/2014 03:16:26
markjai: 複製到另一個資料庫是不是統計值會重新計算呀? 09/20 11:21
iFEELing: 複製過去就是 a whole new world 了 09/20 11:22
iFEELing: 不只統計值 連資料塊實際儲存位置都不一樣 09/20 11:23
GoalBased: 所以看起來 可能是有某幾筆資料 存取發生問題 09/20 18:39
GoalBased: 或許是硬體問題 09/20 18:39
sky2327885: 先看執行計畫!才能知道哪裡問題 09/20 19:49