oracle查看被锁的表和被锁的进程以及杀掉这个进程
-- 1. 查看被锁的表
SELECT p.spid, a.serial#, c.object_name, b.session_id, b.oracle_username,b.os_user_name FROM v$process p, v$session a, v$locked_object b, all_objects c WHERE p.addr = a.paddr AND a.process = b.process AND c.object_id = b.object_id
-- 2. 查看是哪个进程锁的
SELECT sid, serial#, username, status, osuser FROM v$session where serial# = '5002' SELECT sid, serial#, username, status, osuser FROM v$session where serial# = '3789'
-- 3. 杀掉这个进程
alter system kill session 'sid,serial#'; alter system kill session '269,3789'; alter system kill session '34,4661'; alter system kill session '265,5002'; alter system kill session '289,1688'; alter system kill session '282,5799';
相关推荐
-
ORACLE 如何查询被锁定表及如何解锁释放session
ORACLE EBS操作某一个FORM界面,或者后台数据库操作某一个表时发现一直出于"假死"状态,可能是该表被某一用户锁定,导致其他用户无法继续操作 复制代码 代码如下: --锁表查询SQLSELECT object_name, machine, s.sid, s.serial# FROM gv$locked_object l, dba_objects o, gv$session s WHERE l.object_id = o.object_id AND l.session_id =
-
ORACLE 查询被锁住的对象,并结束其会话的方法
使用Oracle时,发现有表被锁,又不知道是谁(或者哪个程序)锁的,怎么办 ? 两步走: 1.查找出被锁对象的会话ID和序列号 执行如下SQL: -- 查询出被锁对象,并提供 kill 脚本 SELECT S.SID, S.MACHINE, O.OBJECT_NAME, L.ORACLE_USERNAME, L.LOCKED_MODE, S.OSUSESR, 'ALTER SYSTEM KILL SESSION '''|| S.SID || ', '|| S.SERIAL#||''';' AS
-
ORA-28002 Oracle 11g存在密码过期问题解决方案
故障现象 Oracle Database 11g 数据库普通用户登录时提示 ORA-28002: the password will expire within 7 days [11:01:00oracle@dvd db_1]$sqlplus wang/oracle SQL*Plus: Release 11.2.0.1.0 Production on Fri Nov 16 11:01:23 2012 Copyright (c) 1982, 2009, Oracle. All rights res
-
oracle密码过期的彻底解决方案
越是赶时间,越耽误事,测试环境oracle密码过期. 不多说,解决:设置成永不过期(SIT环境). 1.以sys用户登录管理数据库:查询语句如下,未格式化查询语句.. select * from dba_profiles where profile = 'DEFAULT' and resource_name = 'PASSWORD_LIFE_TIME'; 2.修改有效期,提交. alter profile default limit password_life_time unlimited; c
-
使用Oracle数据库登录时被告知用户被锁怎么解决
在登陆时被告知test用户被锁 1.用dba角色的用户登陆,进行解锁,先设置具体时间格式,以便查看具体时间 SQL> alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss'; Session altered. 2.查看具体的被锁时间 SQL> select username,lock_date from dba_users where username='TEST'; USERNAME LOCK_DATE --------------
-
Oracle数据库用户的密码过期时间如何修改为永不过期
Oracle的密码过期规则是用Profile来管理的,系统默认只有一个Profile(DEFAULT),该profile的密码过期规则为180天: 而所有的用户都使用该DEFAULT的profile,所以如果修改DEFAULT的过期规则会影响所有的用户: 所以我们新建一个profile,修改该profile的过期规则为无限期,在让某个用户适用于该profile,则该用户的过期规则会变更. 以下举例:修改MESSERIES用户的密码过期规则为UNLIMITED 1. 新建profile "
-
Oracle用户密码过期和用户被锁的解决方法
今天正在上班的过程中,客户反映了他们的系统登录不了,经过我的一番检查,发现是因为数据库密码过期导致的,在网上查找相关资料发现还真有此种情况发生,在此顺便做了个整理,以便共同交流! 产生原因: 在oracle11g中默认在default概要文件中设置了"PASSWORD_LIFE_TIME=180天"所导致. 在oracle11g中默认在default概要文件中设置了"FAILED_LOGIN_ATTEMPTS=10次",当输入密码错误次数达到设置值将导致此问题. 解
-
深入探讨:Oracle中如何查询正锁表的用户以及释放被锁的表的方法
可在PL/SQL中用如下SQL语句来查询当前数据库中哪些表被锁住了,并且是哪些用户来锁的这些表: SELECT A.OWNER, --OBJECT所属用户 A.OBJECT_NAME, --OBJECT名称(表名) B.XIDUSN, B.XIDSLOT, B.XIDSQN, B.SESSION_ID, --锁表用户的session B.ORACLE_USERNAME
-
Oracle 11g中密码过期问题详解
密码过期的原因一般有两种可能: 一.由于Oracle中默认在default概要文件中设置了"PASSWORD_LIFE_TIME=180天"所导致. 二.由于Oracle中默认在default概要文件中设置了"FAILED_LOGIN_ATTEMPTS=10次",当输入密码错误次数达到设置值将导致此问题. 第一种情况解决方法如下: 1.查看用户用的哪种profile策略,一般是default: 复制代码 代码如下: SQL> select username,p
-
Oracle数据库账号被锁定解决方法
在Oracle数据库操纵中,登录Oracle账号时提示失败,并且Oracle账号频繁被锁定.造成此故障的原因是什么呢?本文就介绍了这一过程,经由过程慢慢排查我们就能找到该故障的原因了. 下面记录下查找这个题目的步调. 1. 找到账号被锁按时候 哄骗sqlplus或者sqldeveloper,查询账号被锁定的时候,相干语句如下: --批改当前会话的日期显示格局 alter session set nls_date_format = ""yyyy-MM-dd hh24:mi:ss"
随机推荐
- VBS教程:函数-Asc 函数
- oracle创建一个数据库三步走
- JS实现HTML标签转义及反转义
- 探析浏览器执行JavaScript脚本加载与代码执行顺序
- Android UI设计系列之自定义DrawView组件实现数字签名效果(5)
- c++函数中的指针参数与地址参数区别介绍
- BootStrap modal模态弹窗使用小结
- python标准日志模块logging的使用方法
- javascript实现div浮动在网页最顶上并带关闭按钮效果实例
- (推荐一个超好的JS函数库)S.Sams Lifexperience ScriptClassLib
- 深入浅析search 搜索框的写法
- 查看Linux内存条数与清理内存的命令方法
- 解决ios微信页面回退不刷新的问题
- JavaScript如何实现跨域请求
- ASON网络的运维和管理
- SpringBoot如何优雅的处理全局异常
- 使用django实现一个代码发布系统
- JS 正则表达式验证密码、邮箱格式的实例代码
- PHP安装memcache扩展的步骤讲解
- 适合前端Vue开发童鞋的跨平台Weex的使用详解