方法1:查询V$SQL V$SQL视图中的BIND_DATA字段用来存储绑定变量的值,但是从这个视图查询绑定变量的值,有很大的局限性: 1: 它的记录频率受_cursor_bind_capture_interval隐含参数控制,默认值为900,表示每900秒记录一次绑定值,也就是说在900内,绑定变量值的改变不会反应在这个视图中。除非你调整隐含参数_cursor_bind...
根据V$SQL_BIND_CAPTURE Does Not Show The Value For Binds Of Type TIMESTAMP (Doc ID 444551.1), 这是一个BUG:6156624- BIND VALUE IS NOT CAPTURED FOR COLUMN WITH TIMESTAMP DATATYPE。 可以通过另外种方式查出绑定变量的值。 selectname, position, datatype_string, was_captured, value_string, anydat...
方法1:查询V$SQL V$SQL视图中的BIND_DATA字段用来存储绑定变量的值,但是从这个视图查询绑定变量的值,有很大的局限性: 1: 它的记录频率受_cursor_bind_capture_interval隐含参数控制,默认值为900,表示每900秒记录一次绑定值,也就是说在900内,绑定变量值的改变不会反应在这个视图中。除非你调整隐含参数_cursor_bind...
说明V$SQL对应的sql语句必须一模一样,如果alter system flush shared_pool(主站慎用)后再执行一样的语句,发现语句在V$SQL中的SQL_ID和HASH_VALUE与之前的一样,说明SQL_ID和HASH_VALUE应该是oracle自己的一套算法来的,只是根据sql语句内容来进行转换,sql语句不变则SQL_ID和HASH_VALUE也不变。
测定共享SQL和PL/SQL的命中率(V$LIBRARYCACHE) 访问V$LIBRARYCACHE视图可以显示实际使用的语句(SQL和PL/SQL)访问内存的情况。如果init.ora的参数SHARED_POOL_SIZE设置得太小,内存中就没有足够的空间来存储所有的语句。固定命中率通常应该是95%或更高,而重载的次数不应该超过1%。查询V$SQL_BIND_CAPTURE视图,看看每个...
SELECT b.sid oracleID, b.username 登录Oracle用户名, b.serial#, spid 操作系统ID, paddr, sql_text 正在执行的SQL, b.machine 计算机名 FROM v$process a, v$session b, v$sqlarea c WHERE a.addr = b.paddr AND b.sql_hash_value = c.hash_value...
5. 使用v$sql_bind_capture可以查看仍在内存中的SQL绑定变量值,找了其中一些,有的已经查不到了,但上面10046前的最后一句SQL使用的绑定变量值如下: 看来可以解释许多问题了, (1) update col$语句中一共有20个绑定变量,上面SQL显示的绑定变量值,同样是20个,说明是对应的。 (2) update col$的where条件是编号为...
这个是Oracle使用了绑定变量的原因,如果你想知道具体的绑定变量的值,可以根据SQL_ID查询视图:v$sql_bind_capture rs
SQL> select name, created, log_mode from v$database; NAME CREATED LOG_MODE --- --- --- TEST 13-9月 -09 ARCHIVELOG 2. 自动工作量仓库(AWR) 的基本信息 自动工作量仓库(AWR)在默认情况下,仓库用小时填充,保留期是7天。 AWR使用多少空间 SQL>Select occupant_name...
首先从EMCC监控上,发现一条SQL语句执行好长时间没有执行完毕。 问题解析(一) 根据其SQL_ID的值抓取出的SQL完整语句如下所示: 发现上面的SQL语句里有一个绑定变量":1"。 通过视图v$sql_bind_capture(或者dba_hist_sqlbind)进行查看具体的值。 或者也可以用SQLT(全称SQLTXPLAIN,关于SQLT的下载、安装和使用,请看...