你可以杀掉会话对应的进程,这样系统就会自动清除这些会话。载$session和$process视图中可以获得对应进程信息,然后用kill(unix os)或者orakill(windows os)杀掉spid对应的进程。unix: kill spid如果你的Oracle是在windows平台上的,有一些的不同,因为windows是以thead来代替process的,需要用到sid和spid两个值,所用的命令也由kill替换为Orakill,
格式为:orakill sid spid
格式为:orakill sid spid
2. Oracle 开发论坛: www.oracle-dev.com
3. bbs.itebook.net
会话就是一次数据库的连接,如果你是程序员的话,可以理解为
Connetion (ADO)或者statement(JAVA) select * from v$SESSION where status='INACTIVE' and
type!='BACKGROUND' 可以查询出用户会话成状态为非激活
状态的,这些会话有可能是导致死锁的会话,也有可能只是
一般的会话,比如我在PL/SQL Developer 中新开一个
command windows,但是我一段时间闲置不用,状态也是
非激活的。
清理会话的命令是 alter system kill session 'SID,serial#'
命令执行完毕后, 这些会话会被标记成'KILLED', 由后台进程
来清理系统资源。 另外,在sqlnet.ora 中可以设置相关参数,或者通过建立profile
来管理用户对数据库连接.