杀oracle进程

1.查看自己需要的SID
select sid ,serial#,username from v$session;
SID SERIAL# USERNAME
---------- ---------- ------------------------------
243 17 SYS
252 3
254 5 MANAGER
255 3 MANAGER
删除
2. alter system kill session '254,5';
Oracle中,有多种方式进行进程查询和进程。 ### 进程查询 - 可通过`ps -ef`命令结合`grep`来查询特定进程,如查询`reco`进程: ```bash ps -ef | grep reco ``` 示例输出如下: ```plaintext oracle 15972 1 0 14:20 ? 00:00:00 ora_reco_p19c oracle 38691 26771 0 15:15 pts/3 00:00:00 grep --color=auto reco ``` 这能帮助找到特定进程进程ID(PID),便于后续操作[^1]。 - 还可使用SQL语句在数据库内部查询进程信息。例如,通过以下SQL语句查看造成死锁的用户进程: ```sql select b.owner,b.object_name,a.session_id,a.locked_mode from v$locked_object a,dba_objects b where b.object_id = a.object_id; ``` 该语句能找出导致死锁的用户和相关进程信息。还有另一个版本的查询语句: ```sql select ipad(' ',decode(l.xidusn,0,3,0)) || l.oracle_username User_name, o.owner, o.object_name, o.object_type, s.sid, s.serial#, s.inst_id from gv$locked_object l, dba_objects o, gv$session s where l.object_id = o.boject_id and l.session_id = s.sid order by o.object_id, xidusn desc; ``` 此语句能查询到更详细的死锁进程信息,包括用户名、对象名、对象类型、会话ID等[^2][^3]。 ### 进程 - 对于操作系统层面的进程,可使用`kill -9`命令强制进程。例如,要死`reco`进程: ```bash kill -9 15972 ``` 之后再次使用`ps -ef | grep reco`命令查看,会发现该进程会被重启,这表明某些Oracle进程具有自动重启机制,即使被强制死也会重新启动,且数据库实例通常不会因此发生故障。 - 在数据库层面,若要死死锁的进程,可使用`alter system kill session`语句。语法如下: ```sql alter system kill session 'sid , serial#'; ``` 这里的`sid`和`serial#`可通过上述查询死锁进程的SQL语句获取,使用该语句能在数据库内部死造成死锁的进程[^1][^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值