作者kingoface (Vincent)
看板Database
标题[SQL ] 如何删除v$session的特定session(oracle)
时间Tue Jun 4 15:02:12 2013
各位先进好!
状况是这样的,小弟是Oracle的新手.
新到刚刚可以用sys连线,
看到很多张资料表....结束!
我想要在v$session中删除某个特定session.
所以我下了:DELETE FROM V$SESSION WHERE USERNAME = '12345';
但是他说ORA-02030: 只能选自固定的表格/视观表
我发现我整个观念可能有非常大的错误,所以我去 google一下.
得到一个资讯.
ALTER SYSTEM KILL SESSION 'sid,serial#';
但是好像是全部删除!?
若是要删除12345的话
是下
ALTER SYSTEM KILL SESSION 'sid,serial#' WHERE USERNAME = '12345;
这样吗?
不好意思,因为我没测试空间,不敢乱试,想说上来问问各位先进!
================================已解决分隔线==========================
基本上是
ALTER SYSTEM KILL SESSION '111,222' IMMEDIATE;
111是sid,222是 #
另外要记得加上immediate,不然他不会删除.
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.124.195.130
※ 编辑: kingoface 来自: 59.124.195.130 (06/04 15:46)
1F:→ iFEELing:ㄟ 不太对 immediate是不等CLIENT就砍 但还是要rollback 06/04 22:49
2F:→ iFEELing:有时候不小心会变殭屍的 06/04 22:49
3F:推 iamnotfat:session 会被killed , 交易rollback...除非牵扯到dblink 06/06 11:21
4F:→ iamnotfat:导致distributed transaction 中断 这比较惨... 06/06 11:21
5F:推 wilsmart:没加immediate会等到交易结束才删 通常都是在卡session 06/11 14:26
6F:→ wilsmart:才会下kill session,因此都会加immediate 如果你有用 06/11 14:26
7F:→ wilsmart:OEM 或 Toad.可以利用这2个工具 然指令还是要记一下罗 06/11 14:27
8F:推 wilsmart:另外V$这种table是view..是不能对他做动作的 所以才error 06/11 14:37