v$sqltext

SQL> select sql_text from v$sqltext a where a.hash_value =
  2  (select sql_hash_value from v$session b where b.sid='&sid')
  3  /
Enter value for sid: 113
old   2: (select sql_hash_value from v$session b where b.sid='&sid')
new   2: (select sql_hash_value from v$session b where b.sid='113')

no rows selected

SQL> 


SQL> l
  1* select sid,event,p1,p1text from v$session
SQL> / 

       SID EVENT									  P1 P1TEXT
---------- ---------------------------------------------------------------------- ---------- --------------------
	 2 pmon timer									 300 duration
	 3 VKTM Logical Idle Wait							   0
	 4 rdbms ipc message								 300 timeout
	 5 DIAG idle wait								   5 component
	 6 rdbms ipc message								 300 timeout
	 7 rdbms ipc message								 300 timeout
	 8 DIAG idle wait								   5 component
	 9 rdbms ipc message								 300 timeout
	10 rdbms ipc message								 300 timeout
	11 rdbms ipc message								 141 timeout
	12 rdbms ipc message								 100 timeout

       SID EVENT									  P1 P1TEXT
---------- ---------------------------------------------------------------------- ---------- --------------------
	13 smon timer									 300 sleep time
	14 rdbms ipc message							      180000 timeout
	15 rdbms ipc message								 300 timeout
	16 ASM background timer 							   0
	17 rdbms ipc message								 300 timeout
	18 rdbms ipc message								 100 timeout
	19 wait for unread message on broadcast channel 			  1807711440 channel context
	21 SQL*Net message from client						  1650815232 driver id
	22 rdbms ipc message								 500 timeout
	24 SQL*Net message from client						  1413697536 driver id
	25 rdbms ipc message								 300 timeout

       SID EVENT									  P1 P1TEXT
---------- ---------------------------------------------------------------------- ---------- --------------------
	26 rdbms ipc message							       16027 timeout
	27 rdbms ipc message							       16295 timeout
	28 rdbms ipc message								6000 timeout
	29 rdbms ipc message							       14959 timeout
	30 rdbms ipc message							       14001 timeout
	31 rdbms ipc message							       12751 timeout
	32 rdbms ipc message							       10073 timeout
	33 rdbms ipc message							       14068 timeout
	34 rdbms ipc message							       30000 timeout
	35 rdbms ipc message							       30000 timeout
	36 rdbms ipc message							       30000 timeout

       SID EVENT									  P1 P1TEXT
---------- ---------------------------------------------------------------------- ---------- --------------------
	37 rdbms ipc message							       28372 timeout
	38 rdbms ipc message							       28250 timeout
	39 rdbms ipc message							       26123 timeout
	40 rdbms ipc message							

11.2以后已经把v$session_wait的内容整合到v$session中,

可以通过v$session /v$session_wait找到等待事件,然后关联v$sqltext 试图 通过v$sqltext.hash_value和v$session.sql_hash_value;



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果您想查看Oracle数据库中执行过的SQL语句历史信息,可以通过以下两种方法实现: 方法一:查看V$SQL和V$SQLTEXT视图 1. 连接到Oracle数据库实例,并使用sysdba权限登录。 2. 执行以下查询语句查看V$SQL视图中的SQL语句信息: ``` SELECT * FROM V$SQL; ``` 该视图包含了所有执行过的SQL语句的信息,包括SQL语句的文本、执行次数、执行时间、执行计划等。 3. 如果需要查看SQL语句的具体内容,可以通过查询V$SQLTEXT视图实现: ``` SELECT * FROM V$SQLTEXT WHERE SQL_ID = 'your_sql_id'; ``` 其中,your_sql_id是需要查看的SQL语句的ID,可以在V$SQL视图中找到。 方法二:使用Oracle SQL Developer 1. 打开Oracle SQL Developer工具,并连接到需要查看SQL历史信息的数据库实例。 2. 在左侧的导航栏中选择“Reports” -> “Standard Reports”。 3. 在弹出的窗口中选择“SQL” -> “Top SQL”或“SQL History”,即可查看执行次数最多的SQL语句或执行历史信息。 4. 如果需要查看SQL语句的具体内容,可以在查询结果中选择需要查看的SQL语句,右键选择“View SQL”,即可查看SQL语句的具体内容。 注意:如果您需要在Oracle数据库中保存SQL执行历史信息,可以通过配置auditing功能实现。在开启此功能后,Oracle数据库会记录所有用户在数据库中执行的SQL语句信息,并保存在数据库的AUD$表中。但是,请注意开启此功能可能会影响数据库性能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值