标签:数据库
2016年7月8日
今天开发提供了一条删除表中数据的语句,delete语句。放在plsql中执行了之后发现执行了半个小时还没有结束,这个时候开发还有脚本需要执行,本想创建新的会话,来执行开发提供的语句,可是一个简单的建表语句也不能够执行了。
我就把delete的那个会话在plsql中强制给关掉了,只是把plsql窗口关掉了,虽然管了好半天才给强制关掉。但是建表语句依旧不能够执行。执行了就是没有回应。这个时候测试人员反映点击界面很卡,登录客户端也是一直处于打转的状态。
根据以上情况想到,可能是刚刚强制关掉plsql窗口,虽然窗口关掉了,但是进程还是没有关掉的。
那么怎么查看进程是都存在呢。
查看这个表
select * from v$session
select * from v$session a
where a.USERNAME=‘SYS‘ and a.TERMINAL=‘SHA-P07010086‘ and a.status=‘ACTIVE‘;
这里是因为我执行delete是用sys用户执行的,我的电脑名称是SHA-P07010086
查看进程号
select * from v$process
select * from v$sqlarea b
where b.SQL_ID in (‘dauuu7kkf7xma‘,‘gs36qsq4dju1v‘);
--dauuu7kkf7xma
杀掉进程
alter system kill session ‘133,15615‘ immediate;
这样操作之后,我delete的进程就杀掉了。
之后再查数据,就好些了。测试人员重新登陆应用后,也好了。
标签:数据库
原文地址:http://10983441.blog.51cto.com/10973441/1812744