国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > Oracle > 正文

Oracle中找出無用的索引提高DML性能

2024-08-29 13:51:03
字體:
來源:轉載
供稿:網友
DML性能低下,其中最嚴重的原因之一是無用索引的存在。所有SQL的插入,更新和刪除操作在它們需要在每一行數據被改變時修改大量索引的時候會變得更慢。 許多Oracle 治理人員只要看見在一個SQL 查詢的WHERE語句出現了一列的話就會為它分配索引。雖然這個方法能夠讓SQL運行得更快速,但是基于功能的Oracle 索引使得數據庫治理人員有可能在數據表的行上過度分配索引。過度分配索引會嚴重影響要害Oracle 數據表的性能。 在Oracle9i出現以前,沒有辦法確定SQL查詢沒有使用的索引。讓我們看看Oracle9i提供了什么樣的方法讓你找到這些索引并刪除它們。 過程是相當簡單的。Oracle9i有一個工具能夠讓你使用ALTER INDEX命令監視索引的使用。然后你可以查找這些沒有使用的索引并從數據庫里刪除它們。 下面是一段腳本,它能夠打開一個系統中所有索引的監視功能:
set pages 999;set heading off;spoolrun_monitor.sqlselect 'alter index 'owner'.'index_name' monitoring usage;'from dba_indexeswhere owner not in ('SYS','SYSTEM','PERFSTAT');spool off;@run_monitor
你需要等待一段時間直到在數據庫上運行了足夠多的SQL語句以后,然后你就可以查詢新的V$OBJECT_USAGE視圖。
select index_name, table_name, mon, usedfrom v$object_usage;
在V$OBJECT_USAGE有一列被稱作USED,它的值是YES或者NO。不幸的是,它不會告訴你Oracle使用了這個索引多少次,但是這個工具對于找出沒有使用的索引還是很有用的。


上一篇:Oracle數據庫優化及其應用程序研究

下一篇:怎樣在Oracle字段上建立并使用索引

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
學習交流
熱門圖片

新聞熱點

疑難解答

圖片精選

網友關注

主站蜘蛛池模板: 神木县| 寻乌县| 崇信县| 潼南县| 北海市| 阜新| 道真| 新沂市| 迁安市| 玉屏| 河东区| 新源县| 无为县| 谢通门县| 临高县| 茂名市| 临沭县| 博客| 九江县| 宜君县| 屏边| 辽阳市| 三穗县| 北宁市| 姜堰市| 鲁山县| 望江县| 莒南县| 宁陵县| 邯郸县| 通城县| 三门县| 阿拉善盟| 苏尼特右旗| 马山县| 遵化市| 台南县| 定州市| 余庆县| 北海市| 依兰县|