参考文档:http://www.cnblogs.com/kerrycode/p/3636992.html
1.查询当前会话
select sid,serial#,username,program,machine,status from v$session S;
注:如果当前用户无查询权限,给当前用户赋予dba权限
grant connect,resource,dba to csmc; --为该用户 csmc 赋予dba权限。
2.查询长时间处于无效会话 (查询处于INACTIVE状态两小时或以上的会话);
select sid,serial#,username,program,machine,status from v$session S where S.last_call_et >= 7200 and S.STATUS = 'INACTIVE';
3.清理无效会话
alter system disconnect session 'sid , serial' immediate;
select 'alter system disconnect session ''' ||sid || ', ' || serial# || '''' || ' immediate;' from v$session S where S.last_call_et >= 7200 and S.STATUS = 'INACTIVE'; 再执行生成的sql语言。
本文介绍如何查询和清理Oracle数据库中的无效会话,包括查询当前会话、长时间处于无效状态的会话,并提供具体的SQL语句来实现这些操作。
2661

被折叠的 条评论
为什么被折叠?



