看板 Database 關於我們 聯絡資訊
最近在重整某個Oracle DB (10.2.0.4版) 把每個index data file 大於特定 block_id (例如8GB)的index全部 rebuild, 為了讓index 跑到前面的free block,最後我有回收data file 大於特定GB的空間 (resize data file) 1.有人跟我說,rebuild index後,還要analyze index,可是我記得rebuild後的 last analyzed時間有變,這應該不用再analyze吧? 2.某table有5個index,我這次的重整只有rebuild 4個,有人跟我說第5個也要rebuild, 這樣CBO才會對,是這樣嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.226.179.164 ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1527338314.A.740.html ※ 編輯: chings22 (36.226.179.164), 05/26/2018 20:59:30
kobedisel: 1. create or rebuild 統計值不用重收,last_analyzed 05/27 00:32
kobedisel: 有更新就是ok的,2.第五個基本上不需要rebuild 05/27 00:32
kobedisel: 題外話,真心覺得RBO才是最棒的 05/27 00:33
謝謝您 1.我這次是用rebuild online做的, 部份程式執行完有warning,我認為程式頂多是被 block一下下而已,應該不致於讓程式找錯資料才對,是嗎? 2.rebuild online 後的size比正常的rebuild的size會大一點,這會影響將來的效能嗎? ※ 編輯: chings22 (36.226.179.164), 05/27/2018 01:31:42
wilsmart: rebulid 完後執行程式有warning ? 05/28 17:00
wilsmart: rebuild 不會造成找錯資料 至於size是不是比較大我還真 05/28 17:01
wilsmart: 沒有注意過 05/28 17:01
chings22: 有warning 是其他跑的報表的warning,我沒講清楚,抱歉 05/28 22:12
kobedisel: index size大一點會不會影響效能這會因index access 05/29 00:25
kobedisel: 方式而定,但index設定的好不好(欄位順序)對於相關 05/29 00:25
kobedisel: 程式效能影響非常之大 05/29 00:25
謝謝 想在問一下analyze index,我記得有個公式會拿來判斷是否需rebuild index, 所以analyze index 跟CBO有關嗎? ※ 編輯: chings22 (1.169.101.67), 05/29/2018 20:30:05
iFEELing: CBO考慮怎麼走比較快的參考數據就是analyze來的.... 06/03 03:20
chings22: 我記得是analyze table,那analyze index也是嗎? 06/10 02:21