PL/SQL DEVELOPER 6会话管理
PL/SQL DEVELOPER 6的会话管理功能非常出色,几可以完成所有常用的会话管理功能,主要功能有:
查询会话列表信息
结束会话
会话跟踪
导出会话信息
查询会话具体的详细信息
会话当前打开的游标
会话当前正在执行的SQL
会话所有的统计信息
会话当前锁定的对象
还可以根据个人要求定制查询与会话相关的信息
下面我将全面介绍PL/SQL DEVELOPER 6会话管理功能:
打开Tools/Sessions菜单,会话窗口显示如下:
中间主区域显示的是当前ORACLE数据库的用户会话信息列表
底部显示的是选择会话的查询停息
用户会话信息列表比较常用的字段信息说明
Username:会话登录的ORACLE用户名
Sid:会话SID编号
Status:会话状态(ACTIVE:活动;INACTIVE:未活动; KILL:结束;)
Osuser:会话登录的机器操作系统用户名
Machine:会话登录的机器名
Program:会话登录的程序名
Module:会话注册的模块名
Action:会话注册的活动名
Logon time:会话登录时间
Process:会话在操作系统的进程号
会话管理工具栏说明
每个工具按顺序对应说明
l 刷新
l 自动刷新(让当前会话窗口自动每隔几秒刷新一次)
l 结束会话(结束当前选择的会话,相当于命令alter system kill session )
l 开始跟踪(对当前选择的会话开始进行调试跟踪)
相当于执行过程sys.dbms_system.set_sql_trace_in_session
注: 要进行此项功能当前登录用户必须拥用SYS.DBMS_SYSTEM的执行权限
你可以通过下面语句进行赋权。
grant execute on DBMS_SYSTEM to yourusername;
l 结束跟踪(对当前选择的会话结束调试跟踪)
l 定制会话查询(用于定制会话查询信息,具有很强的扩展功能)
会话查询信息说明
注:以下红色标注为本人定制查询或者是进行修改的地方。
l Cursors:返回当前选择会话打开的游标
对应的SQL语句:
select * from v$open_cursor where sid = :sid
l SQL Text:返回当前选择会话正在执行的SQL
对应的SQL语句:
select sql_text from v$sqltext_with_newlines
where address = hextoraw(:sql_address)
and hash_value = :sql_hash_value
order by piece
l Statics:返回当前选择会话的数据库统计信息
对应的SQL语句:
select names.name, stats.statistic#, stats.value
from v$sesstat stats, v$statname names
where stats.sid = :sid
and names.Statistic# = stats.Statistic#
order by stats.Value desc
l Locks(SQL语句进行过优化):返回当前选择会话锁定的对象
对应的SQL语句:
select * from sys.all_objects a,v$locked_object b where a.object_id=b.object_id and b.session_id=:sid
l Wait(本人个人定制查询):返回当前选择会话的等待信息
对应的SQL语句:
select * from v$session_wait where sid=:sid
l Event(本人个人定制查询):返回当前选择会话的事件信息
对应的SQL语句:
select * from v$session_event
where sid = :sid order by Total_waits desc
高级功能:定制会话查询
可以新增会话监视信息,本文中的Wait及Event信息就是本人通过定制会话查询增加进去的,新增一个项目后将在会话窗口中自动增加一个选项卡, Caption为选项卡的标签,Query为返回监视信息的查询语句,查询语句可以使用v$session视图中所有的字段为绑定变量,如:sid,:username, :sql_address等等。
2005-03-17
叶正盛