真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

OracleTkprof詳細介紹

今天小編就為大家?guī)硪黄嘘POracle Tkprof的文章。小編覺得挺不錯的,為此分享給大家做個參考。一起跟隨小編過來看看吧。

創(chuàng)新互聯(lián)公司公司2013年成立,是專業(yè)互聯(lián)網(wǎng)技術服務公司,擁有項目成都做網(wǎng)站、成都網(wǎng)站建設、成都外貿網(wǎng)站建設網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元清河做網(wǎng)站,已為上家服務,為清河各地企業(yè)和個人服務,聯(lián)系電話:18980820575

Tkprof是一個用于分析Oracle跟蹤文件并且產生一個更加清晰合理的輸出結果的可執(zhí)行工具。如果一個系統(tǒng)的執(zhí)行效率比較低,一個比較好的方法是通過跟蹤用戶的會話并且使用Tkprof工具使用排序功能格式化輸出,從而找出有問題的SQL語句。

 

一. TKPROF 命令語法:

TKPROF filename1, filename2 [ SORT  = [opion][,option] ]

 [  PRINT = integer ]

  [AGGREGATE  = [ YES | NO ] ]

  [INSERT = filename3 ]

  [SYS = [ YES | NO ]  ]

 [  [ TABLE = schema.table ] | [EXPLAIN = user/password ]  ]

 [  RECORD = filename ]

相關說明:

filename1 指定的輸入文件,可以是多個文件聯(lián)起來。

Filename2 格式化輸出文件。

SORT    在輸出到輸出文件前,先進程排序。如果省去,則按照實際使用的順序輸出到文件中。排序選項有以下多種:

  prscnt  number of times parse was called

 prscpu  cpu time parsing

 prsela  elapsed time parsing

 prsdsk  number of disk readsduring parse

 prsqry  number of buffers forconsistent read during parse

 prscu   number of buffers forcurrent read during parse

 prsmis  number of misses inlibrary cache during parse

 execnt  number of execute wascalled

 execpu  cpu time spent executing

 exeela  elapsed time executing

 exedsk  number of disk readsduring execute

 exeqry  number of buffers forconsistent read during execute

 execu   number of buffers forcurrent read during execute

 exerow  number of rows processedduring execute

 exemis  number of library cachemisses during execute

 fchcnt  number of times fetch wascalled

 fchcpu  cpu time spent fetching

 fchela  elapsed time fetching

 fchdsk  number of disk readsduring fetch

 fchqry  number of buffers forconsistent read during fetch

 fchcu   number of buffers forcurrent read during fetch

 fchrow  number of rows fetched

 userid  userid of user that parsedthe cursor

 

PRINT       只列出輸出文件的第一個integer 的SQL語句。默認為所有的SQL語句。

AGGREGATE   如果= NO ,則不對多個相同的SQL進行匯總。

INSERT      SQL 語句的一種,用于將跟蹤文件的統(tǒng)計信息存儲到數(shù)據(jù)庫中。在TKPROF創(chuàng)建腳本后,在將結果輸入到數(shù)據(jù)庫中。

SYS        禁止或啟用將SYS用戶所發(fā)布的SQL語句列表到輸出文件中。

TABLE      在輸出到輸出文件前,用于存放臨時表的用戶名和表名。

EXPLAIN    對每條SQL 語句確定其執(zhí)行規(guī)劃。并將執(zhí)行規(guī)劃寫到輸出文件中。

其中比較有用的一個排序選項是fchela,即按照elapsed time fetching來對分析的結果排序(記住要設置初始化參數(shù)timed_statistics=true),生成的文件將把最消耗時間的sql放在最前面顯示。另外一個有用的參數(shù)就是sys,這個參數(shù)設置為no可以阻止所有以sys用戶執(zhí)行的sql被顯示出來,這樣可以減少分析出來的文件的復雜度,便于查看。

 

二. 對Tkprof命令輸出的解釋:

 

首先解釋輸出文件中列的含義:

CALL:每次SQL語句的處理都分成三個部分

Parse:這步將SQL語句轉換成執(zhí)行計劃,包括檢查是否有正確的授權和所需要用到的表、列以及其他引用到的對象是否存在。

Execute:這步是真正的由Oracle來執(zhí)行語句。對于insert、update、delete操作,這步會修改數(shù)據(jù),對于select操作,這步就只是確定選擇的記錄。

Fetch:返回查詢語句中所獲得的記錄,這步只有select語句會被執(zhí)行。

COUNT:這個語句被parse、execute、fetch的次數(shù)。

CPU:這個語句對于所有的parse、execute、fetch所消耗的cpu的時間,以秒為單位。

ELAPSED:這個語句所有消耗在parse、execute、fetch的總的時間。

DISK:從磁盤上的數(shù)據(jù)文件中物理讀取的塊的數(shù)量。一般來說更想知道的是正在從緩存中讀取的數(shù)據(jù)而不是從磁盤上讀取的數(shù)據(jù)。

QUERY:在一致性讀模式下,所有parse、execute、fetch所獲得的buffer的數(shù)量。一致性模式的buffer是用于給一個長時間運行的事務提供一個一致性讀的快照,緩存實際上在頭部存儲了狀態(tài)。

CURRENT:在current模式下所獲得的buffer的數(shù)量。一般在current模式下執(zhí)行insert、update、delete操作都會獲取buffer。在current模式下如果在高速緩存區(qū)發(fā)現(xiàn)有新的緩存足夠給當前的事務使用,則這些buffer都會被讀入了緩存區(qū)中。

ROWS: 所有SQL語句返回的記錄數(shù)目,但是不包括子查詢中返回的記錄數(shù)目。對于select語句,返回記錄是在fetch這步,對于insert、update、delete操作,返回記錄則是在execute這步。

 

三. Tkprof的使用步驟基本上遵循以下幾步:

1、設置TIMED_STATISTICS為True,可以在會話級別,也可以在實例級別。

會話級:

SQL> alter session settimed_statistics=True;

實例級:

SQL> alter system settimed_statistics=True scope=both;

2、 設置SQL_TRACE,可以在會話級,也可以在數(shù)據(jù)庫級。

會話級:

SQL> alter session set sql_trace=true;

實例級:

SQL> alter system set sql_trace=truescope=both;

關于Oracle Tkprof的介紹就分享到這里了,希望以上內容可以對大家有一定的參考價值,可以學以致用。如果喜歡本篇文章,不妨把它分享出去讓更多的人看到。


網(wǎng)頁題目:OracleTkprof詳細介紹
URL網(wǎng)址:http://weahome.cn/article/jgpdee.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部