這篇文章給大家分享的是有關(guān)如何使用10046查看執(zhí)行計(jì)劃并讀懂trace文件的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。
創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供察雅網(wǎng)站建設(shè)、察雅做網(wǎng)站、察雅網(wǎng)站設(shè)計(jì)、察雅網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、察雅企業(yè)網(wǎng)站模板建站服務(wù),10多年察雅做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。查看 sql 執(zhí)行計(jì)劃的方法有許多種, 10046 事件就是其中的一種. 與其他查看 sql 執(zhí)行計(jì)劃不同, 當(dāng)我們遇到比較復(fù)雜的 sql 語句, 我們可以通過 10046 跟蹤 sql 得到執(zhí)行計(jì)劃中每一個(gè)步驟的邏輯讀, 物理讀以及花費(fèi)的時(shí)間等. 這種細(xì)粒度的跟蹤對(duì)于我們分析 sql 性能尤其有用.
一般來說, 使用 10046 事件得到 sql 執(zhí)行計(jì)劃的步驟如下:
1. 激活當(dāng)前 session 10046 事件
2. 在當(dāng)前 session 中執(zhí)行 sql 語句
3. 關(guān)閉當(dāng)前 session 10046 事件
執(zhí)行完上述步驟后, 通常會(huì)自動(dòng)生成一個(gè) trace 文件. 在 oracle 11g 中, trace 文件一般放在$ORACLE_BASE/diag/rdbms/{database_name}/$ORACLE_SID/trace 目錄下. 如果使用 oradebug 激活跟蹤 10046后, 可以使用 oradebug tracefile_name 得到剛剛生成的 trace 文件的完整路徑.
剛剛提到的 oradebug 激活跟蹤 10046 事件, 我想大部分 dba 都會(huì)使用. oradebug 是個(gè)功能強(qiáng)大非常好用的工具, 使用 oradebug help 將會(huì)看到它的功能很多
SQL> oradebug help
HELP [command] Describe one or all commands
SETMYPID Debug current process
SETOSPID
SETORAPID
SETORAPNAME
SHORT_STACK Get abridged OS stack
CURRENT_SQL Get current SQL
DUMP
DUMPSGA [bytes] Dump fixed SGA
DUMPLIST Print a list of available dumps
EVENT
SESSION_EVENT
DUMPVAR
DUMPTYPE
SETVAR
PEEK
POKE
WAKEUP
SUSPEND Suspend execution
RESUME Resume execution
FLUSH Flush pending writes to trace file
CLOSE_TRACE Close trace file
TRACEFILE_NAME Get name of trace file
LKDEBUG Invoke global enqueue service debugger
NSDBX Invoke CGS name-service debugger
-G
-R
SETINST
SGATOFILE
DMPCOWSGA
MAPCOWSGA
HANGANALYZE [level] [syslevel] Analyze system hang
FFBEGIN Flash Freeze the Instance
FFDEREGISTER FF deregister instance from cluster
FFTERMINST Call exit and terminate instance
FFRESUMEINST Resume the flash frozen instance
FFSTATUS Flash freeze status of instance
SKDSTTPCS
WATCH
DELETE
SHOW
DIRECT_ACCESS
CORE Dump core without crashing process
IPC Dump ipc information
UNLIMIT Unlimit the size of the trace file
PROCSTAT Dump process statistics
CALL
感謝各位的閱讀!關(guān)于“如何使用10046查看執(zhí)行計(jì)劃并讀懂trace文件”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!