转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 数据库 >> ORACLE >> 正文
Oracle常見問題集(四)         ★★★★

Oracle常見問題集(四)

作者:闵涛 文章来源:闵涛的学习笔记 点击数:5004 更新时间:2009/4/22 22:05:52

 

21. EXISTS替換DISTINCT

當提交一個包含一對多表資訊(比如部門表和雇員表)的查詢時,避免在SELECT子句中使用DISTINCT.

一般可以考慮用EXIST替換

 

例如:

低效:

SELECT DISTINCT DEPT_NO,DEPT_NAME

FROM DEPT D,EMP E

WHERE D.DEPT_NO = E.DEPT_NO

高效:

SELECT DEPT_NO,DEPT_NAME

FROM DEPT D

WHERE EXISTS ( SELECT X

FROM EMP E

WHERE E.DEPT_NO = D.DEPT_NO);

 

EXISTS 使查詢更爲迅速,因爲RDBMS核心模組將在子查詢的條件一旦滿足後,立刻返回結果.

 

22. 識別’低效執行’的SQL語句

 

用下列SQL工具找出低效SQL:

 

SELECT EXECUTIONS , DISK_READS, BUFFER_GETS,

ROUND((BUFFER_GETS-DISK_READS)/BUFFER_GETS,2) Hit_radio,

ROUND(DISK_READS/EXECUTIONS,2) Reads_per_run,

SQL_TEXT

FROM V$SQLAREA

WHERE EXECUTIONS>0

AND BUFFER_GETS > 0

AND (BUFFER_GETS-DISK_READS)/BUFFER_GETS < 0.8

ORDER BY 4 DESC;

 

(譯者按: 雖然目前各種關於SQL優化的圖形化工具層出不窮,但是寫出自己的SQL工具來解決問題始終是一個最好的方法)

 

23. 使用TKPROF 工具來查詢SQL性能狀態

 

SQL trace 工具收集正在執行的SQL的性能狀態資料並記錄到一個跟蹤文件中.

這個跟蹤文件提供了許多有用的資訊,例如解析次數.執行次數,CPU使用時間等.這些資料將可以用來優化你的系統.

 

設置SQL TRACE在會話級別: 有效

 

ALTER SESSION SET SQL_TRACE TRUE

 

設置SQL TRACE 在整個資料庫有效仿, 你必須將SQL_TRACE參數在init.ora中設爲TRUE,

USER_DUMP_DEST參數說明了生成跟蹤文件的目錄

 

(譯者按: 這一節中,作者並沒有提到TKPROF的用法, SQL TRACE的用法也不夠準確, 設置SQL

TRACE首先要在init.ora中設定TIMED_STATISTICS, 這樣才能得到那些重要的時間狀態.

生成的trace文件是不可讀的,所以要用TKPROF工具對其進行轉換,TKPROF有許多執行參數.

大家可以參考ORACLE手冊來瞭解具體的配置. )

 

24. EXPLAIN PLAN 分析SQL語句

EXPLAIN PLAN 是一個很好的分析SQL語句的工具,它甚至可以在不執行SQL的情況下分析語句.

通過分析,我們就可以知道ORACLE是怎麽樣連接表,使用什麽方式掃描表(索引掃描或全表掃描)以及使用到的索引名稱.

你需要按照從裏到外,從上到下的次序解讀分析的結果. EXPLAIN PLAN分析的結果是用縮進的格式排列的,

[1] [2] [3] [4] [5] [6] [7] [8] [9] [10]  ...  下一页 >> 


没有相关教程
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Sql Server  · MySql
    · Access  · ORACLE
    · SyBase  · 其他
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台