[Oracle] v$sql_bind_capture & dba_hist_sqlbind

tolilong發表於2016-03-10
v$sql_bind_capture view包含了SQL繫結變數的資訊

1.此view中只儲存最後一次捕獲SQL的變數資訊
2.兩次捕獲之間的間隔為900s,受隱藏引數控制

SQL> @?/yccs
Enter value for value: capture
old   4:    AND ksppinm like '%&value%'
new   4:    AND ksppinm like '%capture%'


KSPPINM                                       KSPPSTVL   KSPPDESC
--------------------------------------------- ---------- ------------------------------------------------------------
_cursor_bind_capture_area_size                400        maximum size of the cursor bind capture area
_cursor_bind_capture_interval                 900        interval (in seconds) between two bind capture for a cursor

yccs.sql內容如下:
set linesize 160
set pagesize 100
col ksppinm format a45
col ksppstvl format a10
col ksppdesc format a60
SELECT ksppinm, ksppstvl, ksppdesc
  FROM x$ksppi x, x$ksppcv y
 WHERE x.indx = y.indx
   AND ksppinm like '%&value%';

3.只對where後面的變數進行捕獲
4.也可以透過dba_hist_sqlbind查詢歷史繫結變數資訊
  dba_hist_sqlbind的資訊是從v$sql_bind_capture裡面採集的

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24237320/viewspace-2054782/,如需轉載,請註明出處,否則將追究法律責任。

相關文章