Oracle报错记录被另外一个用户锁定的解决方案

原因

当一个用户对数据进行修改时,若没有进行提交或者回滚,Oracle不允许其他用户修改该条数据,在这种情况下修改,就会出现:“记录被另外一个用户锁定”错误。

解决

查询用户、数据库锁、以及类型等

select object_id,session_id,locked_mode from v$locked_object;

或者

select t2.owner,t2.object_name,t1.session_id,t1.locked_mode
from v$locked_object t1, dba_objects t2
where t2.object_id=t1.object_id

结果如下:(用户:HRXT;操作表:HRSA_RESERVES_STAFF;锁编号:1026;锁类型:3)

查询对应的serial和sid,用来kill掉会话进程

select t2.username,t2.sid,t2.serial#,t2.logon_time
from v$locked_object t1,v$session t2
where t1.session_id=t2.sid order by t2.logon_time;

结果如:

kill掉该会话进程

alter system kill session 'sid,serial#'

本案例中kill进程语句为:

alter system kill session '1026,14490'

到这里,就可以解决“记录被另外一个用户锁定”错误,如果出现如下图错误:

说明你的权限不足,请用管理员账号登入数据库再重新1,2,3步骤,或者联系数据库管理员赋予你相关权限。

总结

到此这篇关于Oracle报错记录被另外一个用户锁定的解决方案的文章就介绍到这了,更多相关Oracle报错用户锁定内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • win x64下安装oracle 12c出现INS-30131报错的解决方法

    本文为大家分享了安装oracle 12c出现[INS-30131]报错的解决方案,供大家参考,具体内容如下 解决方案: 第一步:控制面板>所有控制面板项>管理工具>服务>SERVER启动 第二步:控制面板>所有控制面板项>管理工具>计算机管理>系统工具>共享文件夹>共享右键单击"共享">新建共享> 点击"下一步">单击"浏览">选择"本地磁盘(C:)&q

  • Oracle SQL Developer连接报错(ORA-12505)的解决方案(两种)

    用oracle数据库新建连接时遇到ora-12505,此问题解决后又出现ora-12519错误,郁闷的半天,经过一番折腾问题解决,下面小编把我的两种解决方案分享给大家,仅供参考.  解决方案一: 今天工作时在新建连接的时候遇到ORA-12505,解决后又遇到ORA-12519错误. ORA-12505: 之前用PL/SQL DEVELOPER和SQLPLUS 登录数据库都没有问题,就是应用程序通过JDBC连接Oracle时无法成功连接,出现ORA-12505错误listener does not

  • win10 oracle11g安装报错问题集合 附解决方法

    本文实例为大家分享了oracle11g安装报错的原因,和对应的解决方法,供大家参考,具体内容如下 注册ocx时出现ole初始化错误或OCX加载错误 问题原因:安装文件不能放在包含空格的文件夹名字中 解决办法:oracle安装的时候最好安装在盘符的根目录下,不要使用中文 ora-00922(缺少或无效选项) 问题原因:配置管理员密码时,采用了数字开头的密码 解决办法:将密码改为英文开头(配置密码时,需要数字.大写英文.小写英文) [ins-32025]所选安装与指定oracle主目录中已安装软件冲

  • oracle报错(ORA-00600)问题处理

    告警日志里这两天一直显示这个错误: ORA-00600:internalerrorcode,arguments:[kcblasm_1],[103],[],[],[],[],[],[] TueAug1209:20:17CST2014 Errorsinfile/u01/app/oracle/admin/orcl/udump/orcl_ora_29974.trc: ORA-00600:internalerrorcode,arguments:[kcblasm_1],[103],[],[],[],[],[

  • Oracle+Mybatis的foreach insert批量插入报错的快速解决办法

    最近做一个批量导入的需求,将多条记录批量插入数据库中. 解决思路:在程序中封装一个List集合对象,然后把该集合中的实体插入到数据库中,因为项目使用了MyBatis,所以打算使用MyBatis的foreach功能进行批量插入.期间遇到了"SQL 命令未正确结束 "的错误,最终解决,记录下来供以后查阅和学习. 首先,在网上参考了有关Mybatis的foreach insert的资料,具体如下: foreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合. foreach

  • oracle 实际值超过数据库某个字段指定长度报错解决

    ORA-01438: value larger than specified precision allowed for this column 实际值的长度大于了数据库里某个字段允许的最大长度导致的插入失败问题. 常见的场景是oracle sequence自动增长,系统用到一定的时候,sequence的值不断的增大,系统开始报错. 解决方法:更改字段的长度解决

  • oracle12c安装报错:PRVF-0002的解决方法

    ./runInstaller 启动图形化报错 PRVF-0002 : Could not retrieve local nodename. 查看了一下报错信息: [root@test68 OraInstall2013-09-06_04-43-39AM]# cat installActions2013-09-06_04-43-39AM.log 后几行报错: SEVERE: [FATAL] PRVF-0002 : Could not retrieve local nodename. Refer as

  • Oracle报错记录被另外一个用户锁定的解决方案

    原因 当一个用户对数据进行修改时,若没有进行提交或者回滚,Oracle不允许其他用户修改该条数据,在这种情况下修改,就会出现:"记录被另外一个用户锁定"错误. 解决 查询用户.数据库锁.以及类型等 select object_id,session_id,locked_mode from v$locked_object; 或者 select t2.owner,t2.object_name,t1.session_id,t1.locked_mode from v$locked_object

  • Oracle数据库"记录被另一个用户锁住"解决方法(推荐)

    1.先来看看为什么会出锁住: 数据库是一个多用户使用的共享资源.当多个用户并发地存取数据时,在数据库中就会产生多个事务同时存取同一数据的情况.若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数据库的一致性. 加锁是实现数据库并发控制的一个非常重要的技术.当事务在对某个数据对象进行操作前,先向系统发出请求,对其加锁.加锁后事务就对该数据对象有了一定的控制,在该事务释放锁之前,其他的事务不能对此数据对象进行更新操作. 在数据库中有两种基本的锁类型:排它锁(Exclusive Locks,即X

  • Oracle报错:ORA-28001:口令已失效解决办法

    目录 一.链接Oracle报错 :ORA-28001:口令已失效 二.查看数据库密码默认有效期: 三.解决方式一:修改用户密码 四.解决方式二:修改默认有效期 总结 一.链接Oracle报错 :ORA-28001:口令已失效 解决办法  原因:Oracle11G创建用户时缺省密码过期限制是180天(即6个月), 如果超过180天用户密码未做修改则该用户无法登录 解决方式: 方式一: 在密码将要过期或已经过期时进行修改密码,密码修改后该用户可正常连接数据库 方式二: 将口令有效期默认值180天修改

  • Android Studio报错unable to access android sdk add-on list解决方案

    一.问题 初次安装Android Studio,启动后,报错如下: unable to access android sdk add-on lis 如图: 二.原因 AS启动后,会在默认路径下检测是否有Android SDK,如果没有的话,就会报上述错误. 三.解决方案 3.1 主动设置SDK 如果本机有Android SDK的话,可以点击cancel跳过,在下一个界面手动选择本地SDK目录就可以了. 3.2 跳过检测 在Android Studio的安装目录下,找到\bin\idea.prop

  • MySQL报错1040'Too many connections'的原因以及解决方案

    目录 报错原因: 解决办法 总结 MySQL 报错1040 ‘Too many connections’ 报错原因: 实际连接数超过了mysql 允许的最大连接数,访问量过高,MySQL服务器抗不住. 解决办法 1.修改max_connections,如果这个值已经很大,2.这个时候就要考虑增加从服务器分散读压力: Windows 找到mysql.ini(Linux 修改/etc/my.cnf文件,在[mysqld]中新增max_connections=N).修改允许最大连接数max_conne

  • ORACLE ORA-01653: unable to extend table 的错误处理方案(oracle报错)

    前几天项目在运行的时候数据库数据插入突然报: ORA-01653: unable to extend table HSDC.ADDRESS by 128 in tablespace DATACENTER 大概的意思是说HSDC表空间不足了,在网上搜了一下出现这种表空间不足的问题一般有两种情况:一种是表空间的自动扩展功能没有打开:另一种确实是表空间确实不够用了,已经达到了扩展的极限.所以我们解决问题就应该先去查看Oracle表空间大小,然后看一下Oracle表空间的自动扩展功能是否打开:若确实是表

  • 关于pycharm 切换 python3.9 报错 ‘HTMLParser‘ object has no attribute ‘unescape‘ 的问题

    有的bug,莫名其妙就好了- python3.9 报错 "AttributeError: 'HTMLParser' object has no attribute 'unescape'" 异常分析解决. 一.问题描述 安装 python3.9 版本后,pycharm 中切换 python3.9 版本,创建虚拟环境报错:"AttributeError: 'HTMLParser' object has no attribute 'unescape'". Executed

  • vue中使用vant的Toast轻提示报错的解决

    目录 使用vant的Toast轻提示报错 提示信息弹出(toast) 实现过程如下 使用vant的Toast轻提示报错 记录一下今天使用vant中的Toast 轻提示,按照官方文档中的方法去使用发现报错使用不了. 文档中是这样写的 Toast.success('成功文案'); Toast.fail('失败文案'); main.js中引用vant后直接调用Toast报错. 实际使用是这样写 this.$toast.success("成功文案"); this.$toast.fail(&qu

  • Nginx报错104:Connection reset by peer问题的解决及分析

    目录 问题解决 应用部署环境 现象 解决 过程 最终解决 问题分析 连接重置 Tomcat 的 Connector Nginx 104 类似问题解决思路 总结 问题解决 应用部署环境 语言:java 框架:ssm web容器:tomcat 负载:nginx 外层代理:F5 现象 根据客户需求对接一个停车缴费的功能,发布到生产环境之后发现,少量账单同时支付没有问题,一旦同时支付的账单数量超过某个值,就会出现网路连接问题,稳定复现. 解决 过程 首先查看了应用的日志,发现用户提示网络异常的时候,服务

随机推荐