前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Oracle用户和表被锁定解决方法

Oracle用户和表被锁定解决方法

作者头像
IT小马哥
发布于 2020-03-18 06:33:07
发布于 2020-03-18 06:33:07
1.2K00
代码可运行
举报
文章被收录于专栏:Java TaleJava Tale
运行总次数:0
代码可运行

1、用dba角色的用户登陆,进行解锁,先设置具体时间格式,以便查看具体时间

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SQL> alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';
Session altered.

2、查看具体的被锁时间

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SQL> select username,lock_date from dba_users where username='TEST';
USERNAME LOCK_DATE TEST 2009-03-10 08:51:03

3、解锁

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SQL> alter user test account unlock;
User altered.

4、查看是那个ip造成的test用户被锁

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
查看$ORACLE_HOME/network/admin/log/listener.log日志
10-MAR-2009 08:51:03 * (CONNECT_DATA=(SID=lhoms)(SERVER=DEDICATED)(CID=(PROGRAM=oracle)(HOST=omstestdb)(USER=oraoms))) * (ADDRESS=(PROTOCOL=tcp)(HOST=10.69.1.11)(PORT=49434)) * establish * lhoms * 0
10-MAR-2009 08:51:03 * (CONNECT_DATA=(SID=lhoms)(SERVER=DEDICATED)(CID=(PROGRAM=oracle)(HOST=omstestdb)(USER=oraoms))) * (ADDRESS=(PROTOCOL=tcp)(HOST=10.69.1.11)(PORT=49435)) * establish * lhoms * 0

这样可知是上面10.69.1.11的ip尝试多次失败登陆造成的被锁 注: 一般数据库默认是10次尝试失败后锁住用户

1、查看FAILED_LOGIN_ATTEMPTS的值

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
select * from dba_profiles where RESOURCE_NAME = 'FAILED_LOGIN_ATTEMPTS';

2、修改为30次

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
alter profile default limit FAILED_LOGIN_ATTEMPTS 30;

3、修改为无限次(为安全起见,不建议使用)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
alter profile default limit FAILED_LOGIN_ATTEMPTS unlimited;

Oracle数据库操作中,我们有时会用到锁表查询以及解锁和kill进程等操作,那么这些操作是怎么实现的呢?本文我们主要就介绍一下这部分内容。

(1)锁表查询的代码有以下的形式:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
select count(*) from v$locked_object;
select * from v$locked_object;

(2)查看哪个表被锁

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
select b.owner,b.object_name,a.session_id,a.locked_mode from v$locked_object a,dba_objects b where b.object_id = a.object_id;

(3)查看是哪个session引起的

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
select b.username,b.sid,b.serial#,logon_time from v$locked_object a,v$session b where a.session_id = b.sid order by b.logon_time; 

(4)杀掉对应进程

执行命令:alter system kill session'1025,41'; 其中1025为sid,41为serial#.

查询那个程序导致的

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SELECT v.program,v.* FROM v$session v where serial# = '9' and sid =  586

本文由 小马哥 创作,采用 知识共享署名4.0 国际许可协议进行许可 本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-12-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
oracle 锁表、解锁的语句
对oracle数据库的表进行update操作的时候,忘了提交,导致后面无法对表格进行数据修改操作。现将网络搜索到的
全栈程序员站长
2022/07/04
1.1K0
Oracle用户被锁原因及办法
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   ------------------------------ -------------------   TEST 2009-03-10 08:51:03   3、解锁   SQL> alter user test account unlock;   User altered.   4、查看是那个ip造成的test用户被锁
孙杰
2019/10/29
2.7K0
Oracle大数据量更新引发的死锁问题解决方法及Oracle分区和存储过程的思考
前几天上午在对数据库的一张表进行操作的时候,由于这张表是按照时间的一张统计表,正好到那天没有测试数据了,于是我想将表中所有的时间,统一更新到后一个月,于是对80w条数据的更新开始了。整个过程曲折的一批。同时学到了很多知识,在此进行记录。希望对大家有帮助。
星哥玩云
2022/08/17
1.5K0
一个Oracle小白的AWR报告分析(二)
背景:某个类似准实时的数据分析系统,每15分钟从其他6个数据库中抽取五百张增量数据表,并进行15分钟粒度统计,同时有个前端门户进行查询。
python与大数据分析
2022/03/11
1.3K0
一个Oracle小白的AWR报告分析(二)
oracle用户名密码及用户被锁等问题
oracle 11g 用户名和密码默认区分大小写,可更改alter system set sec_case_sensitive_logon=false 设置改为不区分大小写。
DougWang
2020/02/18
9250
DBA常用SQL语句(3)- cache、undo、索引和等待事件
Undospace=URUPSblocksize + overload(10%), 计算 undo tablespace 大小
Yunjie Ge
2022/04/23
4780
一线运维 DBA 五年经验常用 SQL 大全(一)
本文 SQL 均是在运维工作中总结整理而成的,对于运维 DBA 来说可提高很大工作效率,当然如果你全部能够背下来那就牛逼了,如果不能,建议收藏下来慢慢看,每条 SQL 的使用频率都很高,肯定能够帮助到你。
JiekeXu之路
2021/02/23
1.5K0
ORA-04021: timeout occurred while waiting to lock object 解决方法
ORA-04021: timeout occurred while waiting to lock object 解决方法
星哥玩云
2022/08/17
9620
数据表或记录被锁住,解锁方法,请大家指教!
最近老是碰到数据库中的数据表被锁需要解锁的问题,弄了一番后,现在把方法贡献出来给大家,请大家多指教 1、select * from v$locked_object 查出被锁定的对象,其中object_id是对象的ID,session_id是被锁定对象有session ID; 2、select object_name, object_type from dba_objects where object_id = 刚才查出来的object_id;(根据v$locked_object里的object_id提出来的
Java学习123
2018/05/16
8070
ORACLE常用性能监控SQL【一】
kill session: 执行 alter system kill session ‘761,876’(sid 为 761);
小小工匠
2021/08/16
2.8K0
Oracle中执行truncate操作出现hang
同事说某套Oracle中有一张94G容量的表需要清空,用delete删除的,但是一直卡着。
bisal
2021/11/08
7210
plsql被另一个用户锁住的解决办法
今天很不幸,可能由于自己的疏忽,在用plsql的时候用select * from 表名 for update 去修改数据,之后由于接着专心写代码修bug等又做其他事情了,导致可能没有关闭锁,然后关闭了plsql,之后再查修改的数据准备提交的时候,就报错了,提示【记录被另一个用户锁住】,所以这里提醒一下大家,最好不要用for update去修改数据,要用 select A.*,A.rowid from 表名 去修改数据,这样可以避免被锁。
小小鱼儿小小林
2020/06/24
1.1K0
plsql被另一个用户锁住的解决办法
解决Oracle锁表[通俗易懂]
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/09
4970
解决Oracle锁表[通俗易懂]
查询锁表语句Oracle_会sql语句引起锁定
–oracle查询锁表解锁语句 –首先要用dba权限的用户登录,建议用system,然后直接看sql吧 1. 如下语句 查询锁定的表.
全栈程序员站长
2022/09/25
3820
Oracle常用的SQL方法总结
该文介绍了在Oracle中常用的SQL方法,包括基于条件的插入和修改、在分组和集合中统计分组、根据时间戳恢复数据、解决死锁问题、查看当前连接用户正在运行的SQL语句和查询最消耗资源的实时语句等。
彭泽0902
2018/01/04
9930
Oracle锁表查询和解锁方法
我们这里一般用的PL/SQL,总是无意间把表锁住,所以我今天就整理了一下简单的解锁和查询锁表的方法;
全栈程序员站长
2022/06/26
3K0
Oracle锁表查询和解锁方法
ORACLE常用性能监控SQL【二】
条件为什么block>100,因为一些很小的表,只有几行数据实际大小很小,但是block一次性分配就是5个(11g开始默认一次性分配1M的block大小了,见create table storged的NEXT参数),5个block相对于几行小表数据来说就相差太大了
小小工匠
2021/08/16
4K0
常用Oracle SQL集锦
常用dml和query开并行 --开并行 ALTER SESSION FORCE PARALLEL DML PARALLEL 16; ALTER SESSION FORCE PARALLEL QUERY PARALLEL 16; --关并行 ALTER SESSION DISABLE PARALLEL DML ; ALTER SESSION DISABLE PARALLEL QUERY; 索引开并行 drop index IDX_SB_SBZT_LRRQ; create index IDX_SB_SBZT_
职场亮哥
2020/10/10
6220
oracle锁表怎么处理_锁表如何解决办法
如有记录表示有LOCK ,记录下SID和serial# , 將记录的ID替换下面的SID,serial,即可解除LOCK
全栈程序员站长
2022/09/25
4400
oracle锁表_数据库锁表如何解决
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/172299.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/25
7980
oracle锁表_数据库锁表如何解决
相关推荐
oracle 锁表、解锁的语句
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验