oracle 效率问题,Oracle【诡异】的效率问题
首先說一點,這個問題和redolog無關,redolog是oralce運行機制的一部分,必須使用,最多是測試環境歸檔日志沒開。
表插入大批量數據再刪除后,查詢速度慢的問題,關鍵是使用delete語句刪除記錄后,表占用的空間沒有釋放,在oracle中的說法就是HWM保持不變,因此查詢的時候即使只有幾條記錄,如果全表掃描的話仍會花費大量的時間,如果是臨時表需要定期清理數據,使用truncate table更合適一些。
oracle官方對truncate操作的說明:
Use the TRUNCATE TABLE statement to remove all rows from a table. By default, Oracle Database also performs the following tasks:
Deallocates all space used by the removed rows except that specified
by the MINEXTENTS storage parameter
Sets the NEXT storage parameter to the size of the last extent removed
from the segment by the truncation process
生產環境如果無法使用truncate,可以使用下面的方法降低HWM
方法一:
alter table table_name move
完成后需要重新創建索引
方法二:
alter table table_name enable row movement;
alter table table_name shrink space;
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的oracle 效率问题,Oracle【诡异】的效率问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 织梦?php?调用栏目,dedecms列
- 下一篇: oracle 计划中的view,执行计划