首页 > 数据库 >Oracle报 ORA-00054资源正忙的解决办法

Oracle报 ORA-00054资源正忙的解决办法

时间:2023-09-05 11:00:52浏览次数:47  
标签:lock session 00054 sid Oracle where id select ORA


只需三步:

第一步:

select session_id from v$locked_object;

第二步:

SELECT sid, serial#, username, osuser FROM v$session where sid = 967;

第三步:

ALTER SYSTEM KILL SESSION '967,59523';

其他问题:

1.查询数据库中的锁

select * from v$lock;
select * from v$lock where block=1;

2.查询被锁的对象

select * from v$locked_object;

3.查询阻塞

查被阻塞的会话
select * from v$lock where lmode=0 and type in ('TM','TX');

查阻塞别的会话锁
select * from v$lock where lmode>0 and type in ('TM','TX');

4.查询数据库正在等待锁的进程

select * from v$session where lockwait is not null;

5.查询会话之间锁等待的关系

select a.sid holdsid,b.sid waitsid,a.type,a.id1,a.id2,a.ctime from v$lock a,v$lock b
where a.id1=b.id1 and a.id2=b.id2 and a.block=1 and b.block=0;

6.查询锁等待事件
select * from v$session_wait where event='enqueue';

解决方案:
select session_id from v$locked_object; --首先得到被锁对象的session_id
SELECT sid, serial#, username, osuser FROM v$session where sid = session_id; --通过上面得到的session_id去取得v$session的sid和serial#,然后对该进程进行终止。
ALTER SYSTEM KILL SESSION 'sid,serial';
example:
ALTER SYSTEM KILL SESSION '13, 8';

标签:lock,session,00054,sid,Oracle,where,id,select,ORA
From: https://blog.51cto.com/u_14544277/7369638

相关文章

  • 20230522 java.time.temporal.TemporalField
    介绍java.time.temporal.TemporalFieldpublicinterfaceTemporalField时间域Afieldofdate-time,suchasmonth-of-yearorminute-of-hour日期和时间使用域来表示,这些域将时间线划分为对人类有意义的内容。此接口的实现代表这些域。最常用的单位在ChronoField中定义......
  • 20230522 java.time.temporal.TemporalAccessor
    介绍java.time.temporal.TemporalAccessorpublicinterfaceTemporalAccessor时间访问器定义对时间对象的只读访问,例如日期、时间、偏移量或组合日期、时间和偏移量对象的基本接口类型大多数日期和时间信息都可以表示为数字。这些是使用TemporalField建模的,其中使用long......
  • 20230522 java.time.temporal.Temporal
    介绍java.time.temporal.TemporalpublicinterfaceTemporalextendsTemporalAccessor时间定义对时间对象的读写访问的框架级接口日期、时间和偏移量对象的基本接口类型,可以使用进行修改操作APIisSupportedbooleanisSupported(TemporalUnitunit);minusplusunt......
  • oracle建立账号赋予权限
    --建立账号createuser账号identifiedby密码--赋予连接数据库的权限grantconnectto账号--赋予查看视图的权限,也包含形成视图的表GRANTSELECTON视图TO账号  CREATESESSION--建立会话RESOURCE角色:--是授予开发人员的CREATECLUSTER--......
  • win2016系统php7.4安装oracle oci8扩展
    查看php版本,判断操作系统是否64位;phpinfo();判断PHP是否TS查看ThreadSafety的值,如果是disabled就是NTS,否则是TS,下载的时候要区分;下载扩展oci82.2.0forWindows:https://pecl.php.net/package/oci8/2.2.0/windows下载并解压,把php_oci8.dll,php_oci8_11g.dll,php_oci8_12c......
  • Caused by: java.sql.SQLSyntaxErrorException: ORA-00923: 未找到要求的 FROM 关键字
    最终是,查询条件,入参为null,所导致。JDBCgetParameterTypecallfailed-usingfallbackmethodinsteadRA-00923:FROMkeywordnotfoundwhereexpected 进一步,这个错误,在job执行的时候,会导致,oracle游标不够ORA-01000maximumopencursorsexceeded   参考: ......
  • ORACLE 常用的SQL语法和数据对象 选择自 i_like_database 的 Blog
    一.数据控制语句(DML)部分1.INSERT (往数据表里插入记录的语句)INSERTINTO表名(字段名1,字段名2,……)VALUES(值1,值2,……);INSERTINTO表名(字段名1,字段名2,……) SELECT字段名1,字段名2,……FROM另外的表名;字符串类型的字段值必须用单引号括起来,例......
  • Oracle-TableSpace Move To
    SELECTowner,segment_name,partition_name,tablespace_name,'ALTERTABLE'||a.segment_name||'movePARTITION'||a.partition_name||'tablespaceTESTDB;'FROMdba_segmentsaWHERE1=1--ANDowner='TEST'--A......
  • 通过Oracle的回收站恢复被删除的表
    如果误drop了表,可以使用select*fromuser_recyclebinflashback[tablename]tobeforedrop;但是,如果普通用户没有执行flashback的权限,可以使用sys以dba身份登录执行。如果一次性删除了多个表,可以写一个存储过程,一次性恢复。定义一个游标,select*fromdba_recyclebinwhereowne......
  • Oracle sqlldr笔记
    需求:有两列0X开头的guid,需要合并并转换为10进制数值。控制文件如下:LOADDATAINFILE“/home/xxxdbfile/xxxdb/xxx.txt”truncateINTOTABLExxx_USER.TTTTTTABLEFIELDTERMINATEBY“”TRAILINGNULLCOLS—这个是指如果上面的列中,有空的列载入,不报错(IDsequence(max,1),......