解决oracle数据库死锁问题

select * from V$session;
select * from v$LOCK;

select sid, serial# from V$session
where sid in (select sid from v$LOCK where sid in (‘5‘,‘12‘,‘14‘,‘16‘,‘67‘,‘71‘,‘72‘,‘73‘,‘76‘,‘77‘,‘78‘,‘132‘,‘136‘,‘137‘,‘141‘,‘144‘,‘146‘,‘194‘,‘196‘,‘197‘,‘204‘));
alter system kill session ‘sid, serial#‘;

原文地址:https://www.cnblogs.com/jimmyLei/p/9186406.html

时间: 2024-10-16 20:22:52

解决oracle数据库死锁问题的相关文章

如何解决Oracle数据库的非归档模式迁移到归档模式中存在的问题

今天在做oracle归档测试的时候发现了几个问题,在这里记录下来希望能得到大家的纰漏和帮助 [[email protected] ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.1.0 Production on Fri Dec 19 17:34:42 2014 Copyright (c) 1982, 2009, Oracle. All rights reserved. Connected to: Oracle Database 11g Ente

如何解决oracle数据库过期的情况

之前用的数据库都是开源的,在另一台电脑上安装的时候,居然有时间限制,只能用30天.安装了好多次都是这样,就这样,三十天一破解.破解方法如下: 不管是快要过期了还是已经过期了,都可以用这个方法. 1.在“运行”中输入regedit,回车打开注册表. 2.在注册表里按HKEY_CURRENT_USER\Software这个路径找到“Allround Automations ”,删除它. 3.删除上一步中的后,在找到HKEY_CURRENT_USER\Software\Microsoft\Securi

解决oracle数据库中 ORA-01843: 无效的月份问题

1.这是因为客户端是中文环境,格式mon就不能用英文的月份写法,必须用中文的“六月”如果不想修改sql语句运行的话,就需要在执行该语句之前,使用alter session 命令将nls_date_language修改为american,如下:alter session set nls_date_language='american'以英语显示日期. 2若你的客户端是英文环境,那就是你没有用oracle数据的时间函数查询数据,应在sql语句中使用oracle数据库中的时间函数.

解决Oracle数据库错误ORA-16040和ORA-00312

一.问题现象及排查过程 数据库服务器重启后,应用无法正常启动,提示无法连接数据库.看来,问题可能出在数据库服务器上,那就先检查数据库服务器: 1.登录进数据库服务器后,打开cmd命令提示符,输入命令 sqlplus / as sysdba 连入本机数据库,进入sqlplus程序上下文,然后输入命令 select instance_name,status from v$instance; 执行后,提示数据库在mounted状态,而非在open状态,自然无法正常对外提供服务了.难怪应用无法正常启动!

解决oracle数据库 ora-00054:resource busy and acquire with NOWAIT specified 错误

本人在使用pl/sql developer 客户端调用存储过程进行操作时发现中途卡机然后强制终止pl/sql developer 之后,oracle就一直出现锁相关的错误. 经分析认为在调用存储过程时对表进行了DDL语句操作时导致了悲观封锁.客户端卡机后oracle一直没有对这个锁进行释放且一直不会完成释放导致错误. 需要对此会话进行强制杀掉: 1. 查询当前被锁的对象 select t2.username, t2.sid, t2.serial#, t2.logon_time from v$lo

解决Oracle数据库不能导出空表的问题

标题的描述不太确切,应该是没有插入过数据的表(即:插入过数据,之后删除的行数为0的表是可以导出的) 解决办法: 1. 执行SQL: select 'alter table '||table_name||' allocate extent;' from user_tables where num_rows=0; 2. 将sql结果(结果为拼接的sql语句),复制出来在数据库中执行 3.正常导出(这时那些空表都可以导出了)

解决oracle数据库删除sql语句出现^H字样

1:安装readline包 yum install readline* 2:安装源码包: rlwrap-0.30.tar.gz ./configure && make && make install 3:修改oracle用户的环境变量: alias sqlplus='rlwrap sqlplus' alias rman='rlwrap rman'

Oracle常见死锁发生的原因以及解决方法

Oracle常见死锁发生的原因以及解决办法 一,删除和更新之间引起的死锁 造成死锁的原因就是多个线程或进程对同一个资源的争抢或相互依赖.这里列举一个对同一个资源的争抢造成死锁的实例. Oracle 10g, PL/SQL version 9.2 CREATE TABLE testLock(  ID NUMBER, test VARCHAR(100)  ) COMMIT INSERT INTO testLock VALUES(1,'test1'); INSERT INTO testLock VAL

数据库死锁的检查和解决方法

转自:数据库死锁的检查方法 数据库死锁的检查方法 一.         数据库死锁的现象程序在执行的过程中,点击确定或保存按钮,程序没有响应,也没有出现报错.二.         死锁的原理当对于数据库某个表的某一列做更新或删除等操作,执行完毕后该条语句不提交,另一条对于这一列数据做更新操作的语句在执行的时候就会处于等待状态,此时的现象是这条语句一直在执行,但一直没有执行成功,也没有报错.三.         死锁的定位方法通过检查数据库表,能够检查出是哪一条语句被死锁,产生死锁的机器是哪一台.