我们经常出现执行大数据量sql时,由于各种原因,我们想取消掉,此时在pl/SQL中选择了停止,但是被锁的表始终没有释放,因此我们可以如下操作
--查询锁住的表,以及对应的session状态,当状态为active时,执行"active时初级杀掉死锁线程SQL"可以杀掉正在执行的线程,但是很多时候运行后状态会变为killed,这时数据库在回滚操作,这个时间有时会非常的慢,如果你没有耐心,或者是赶时间,可以执行"kill时杀掉死锁线程命令",注意这个命令不是在sql中执行的,而是在数据库服务器机子上执行的,作用是杀掉指定线程,一定要慎重。
此外“客户端ip”这个需要额外的触发器支持
create or replace trigger on_logon_trigger
after logon on database
begin
dbms_application_info.set_client_info(sys_context('userenv', 'ip_address'));
end;
/
select t3.STATUS 线程状态,'alter system kill session ''' || t3.sid || ',' || t3.serial# || ''';' active时初级杀掉死锁线程SQL,
'orakill ' || t4.instance_name || ' ' || t5.spid kill时杀掉死锁线程命令,
t1.SESSION_ID sessionid,t3.SERIAL# , t2.OBJECT_NAME 被锁住的对象,
t2.OBJECT_TYPE 被锁住的类型,t1.ORACLE_USERNAME 数据库用户,
t1.OS_USER_NAME 操作系统用户 ,t3.CLIENT_INFO 客户端ip_需要额外触发器支持
from V$LOCKED_OBJECT t1 ,USER_OBJECTS t2,v$session t3,v$instance t4,v$process t5
where t1.OBJECT_ID = t2.OBJECT_ID and t1.SESSION_ID=t3.SID and t5.addr=t3.PADDR
分享到:
相关推荐
主要给大家介绍了oracle查看执行最慢与查询次数最多的sql语句,文中给出完整的示例代码,相信对大家的学习或者工作具有一定的参考价值,有需要的朋友们下面来一起看看吧。
oracle用线程录入数据
Oracle定时执行存储过程 Oracle定时执行存储过程
Oracle并行执行
Oracle批量执行传多个参数多个SQL文件,适合于跑批,生成环境直接测试,没有问题
更具客户的需求,编写出客户的sql语句,提供oracle 多线程模板
Oracle执行计划参数解释,Oracle SQL优化的基础是看懂Oracle的执行计划,本文当系统整理了Oracle执行计划里面的各种参数。
Oracle sql执行流程图_SQL执行过程一、sql语句的执行步骤:1)语法分析,分析语句的语法是否符合规范,衡量语句中各表达式的意义。2) 语义分析,检查语句中涉及的所有数据库对象是否存在,且用户有相应的权限。3)...
Oracle的执行计划,本文档说明了Oracle的执行计划,非原创,好东西再这里分项下
教你怎样看懂Oracle的执行计划。
Oracle的执行计划--上,Oracle的执行计划--上,Oracle的执行计划--上
Java操作Oracle数据库-多线程,演示了使用多线程技术从oracle 数据库中读取函数、存储过程等功能。,具体实现方法请详见源代码。
这种只有update无法执行其他语句可以执行的其实是因为记录锁导致的,在oracle中,执行了update或者insert语句后,都会要求commit,如果不commit却强制关闭连接,oracle就会将这条提交的记录锁住。由于我的java程序...
oracle监听执行,可以监听应用执行的sql语句
Oracle的执行计划--下,Oracle的执行计划--下,Oracle的执行计划--下
Oracle SQL执行计划分析器功能的创建3步曲: 1 首先,编译XYG_ALD_SESS_PKG的Package头。 (XYG_ALD_SESS_PKG.sql) 2 接着要建立好下面的4个视图对象。因为XYG_ALD_SESS_PKG包体会用到。(View Create Script v...
// 确认本地已经安装oracle的客户端 // ※只会执行sql文 不会自动删除表内数据 // oracleStup.bat // 命令行 用户名/密码 @库名 不需要修改 sqlplus C3/AISIN@C3 @sqlFile.sql > execute.log // sqlFile.sql // @...
oracle触发器执行顺序.pdf
oracle JOB常见的执行时间, 在初学者定义JOB时,对于执行时间往往不知道如何设置. 该文档列举了常见的定义方式.可以由此进行扩展.