
正文
oracle如何删除会话 oracle删除记录
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
无用的会话 oracle 会自动清除吗
默认情况下是不会自动清除的,如果想要自动清除会话,可以设置profile文件里的IDLE_TIME参数分配给指定用户。
参考:
相关问答
Q1: 如何快速的杀掉Oracle的Session
举个例子
通过session id (SID) 找到系统进程号 然后kill 进程
SQL select spid from v$process where addr=(select paddr from v$session where rownum=1 and sid=(select userenv('SID') from dual));
SPID
------------------------
12135
spid 系统进程号
SQL ho kill -9 12135
kill 掉这个进程 就完oracle如何删除会话了
SQL select sysdate from dual;
select sysdate from dual
*
第 1 行出现错误:
ORA-03135: 连接失去联系
进程 ID: 12135
会话 ID: 65 序列号: 19533
Q2: 如何杀掉(kill)Oracle中的会话(Session)
��匠�焙蟛呕岜唤饪��茄�蓟嵩斐捎τ貌僮鞅蛔枞�?梢砸設ralce管理员权限用户登录Oracle数据,查询到被锁的对象,然后杀除指定的会话。用下面的语句查询被锁的对象,可以带上更多约束条件,如schemaname等更精确的匹配。
alter system kill session 'sid, serial#' 如上面查出来的一条记录的sid是53, serial#为663,就执行以下的语句alter system kill session '53,663' 如果要一次性杀死多个会话,一个一个填写sid和serial#十分的繁琐,应该在查询被锁对象的同时拼凑出多条的杀会话语句,以分号分隔,一起复制下来,然后就可以批量的执行了。 1.SELECT'alter system kill session '''|| c.sid ||''||','|| c.serial# ||''';',2. a.object_id, a.session_id, b.object_name, c.*3. FROMv$locked_object a, dba_objects b, v$session c4. WHEREa.object_id = b.object_id5. ANDa.SESSION_ID = c.sid(+)6. ANDschemaname ='Unmi'7. ORDERBYlogon_time
Q3: 如何杀掉Oracle中的会话
1.查找:(注:若没有死锁的session,查询记录将为空。)
(1).查询v$locked_object表
select * from v$locked_object;
(2).以Oralce管理员权限用户登录Oracle数据,查询到被锁的对象
SELECT a.object_id, a.session_id, b.object_name, c.*
FROM v$locked_object a, dba_objects b, v$session c
WHERE a.object_id = b.object_id
AND a.SESSION_ID = c.sid(+);
2.Kill Session:
alter system kill session 'sid, serial#';
注:
有时alter system kill session 'sid,serial#';并不能彻底的杀死会话。
如果有ora-00031错误,则在后面加immediate;
alter system kill session '29,5497' immediate;
例如:
上面查出来的一条记录的sid是149, serial#为4153,就执行以下的语句:
alter system kill session '149,4153' ;
关于oracle如何删除会话和oracle删除记录的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。








