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

 更新时间:2018年03月23日 11:29:23   作者:le_mond  
数据库是一个多用户使用的共享资源。当多个用户并发地存取数据时,在数据库中就会产生多个事务同时存取同一数据的情况。这篇文章主要介绍了Oracle数据库"记录被另一个用户锁住"解决方法

1、先来看看为什么会出锁住:

    数据库是一个多用户使用的共享资源。当多个用户并发地存取数据时,在数据库中就会产生多个事务同时存取同一数据的情况。若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数据库的一致性。

    加锁是实现数据库并发控制的一个非常重要的技术。当事务在对某个数据对象进行操作前,先向系统发出请求,对其加锁。加锁后事务就对该数据对象有了一定的控制,在该事务释放锁之前,其他的事务不能对此数据对象进行更新操作。

    在数据库中有两种基本的锁类型:排它锁(Exclusive Locks,即X锁)和共享锁(Share Locks,即S锁)。当数据对象被加上排它锁时,其他的事务不能对它读取和修改。加了共享锁的数据对象可以被其他事务读取,但不能修改。数据库利用这两种基本的锁类型来对数据库的事务进行并发控制。

2、解决方法:

用管理员账号登录数据库,执行sql:

SELECT 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 = s.sid;

找到对应锁住的表执行:

--释放SESSION SQL:  
--alter system kill session 'sid, serial#';  
ALTER system kill session '23, 1647';

总结

以上所述是小编给大家介绍的Oracle数据库"记录被另一个用户锁住"解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • Oracle 统计用户下表的数据量实现脚本

    Oracle 统计用户下表的数据量实现脚本

    这篇文章给大家分享Oracle 统计用户下表的数据量实现脚本,非常不错,具有参考借鉴价值,需要的朋友参考下吧
    2017-09-09
  • Oracle数据库19C的安装与配置指南(2022年最新版)

    Oracle数据库19C的安装与配置指南(2022年最新版)

    在Oracle数据库的发展中,数据库一直处于不断升级状态,下面这篇文章主要给大家介绍了关于Oracle数据库19C的安装与配置指南的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2022-06-06
  • Oracle AWR(自动工作量资料档案库)的管理与维护详解

    Oracle AWR(自动工作量资料档案库)的管理与维护详解

    这篇文章主要给大家介绍了关于Oracle AWR(自动工作量资料档案库)管理与维护的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-10-10
  • 关于系统重装后Oracle数据库完全恢复的解决办法

    关于系统重装后Oracle数据库完全恢复的解决办法

    本篇文章是对系统重装后Oracle数据库完全恢复的解决办法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • Oracle报存储过程中调用DBLink同义词出现错误:PLS-00201: 必须声明标识符

    Oracle报存储过程中调用DBLink同义词出现错误:PLS-00201: 必须声明标识符

    这篇文章主要介绍了Oracle报存储过程中调用DBLink同义词出现错误:PLS-00201: 必须声明标识符的相关资料,需要的朋友可以参考下
    2018-03-03
  • db2与oracle的sql语句有什么不同

    db2与oracle的sql语句有什么不同

    Oracle和DB2都是关系型数据库管理系统(RDBMS),但它们的设计理念、特性及性能等方面存在一些显著的差异,本文将详细比较Oracle和DB2,帮助企业和数据库管理员了解这两个系统各自的优势和局限性,并指导用户根据自己的业务需求作出合适的选择
    2024-02-02
  • 详细聊聊Oracle表碎片对性能有多大的影响

    详细聊聊Oracle表碎片对性能有多大的影响

    当针对一个表的删除操作很多时,表会产生大量碎片,下面这篇文章主要给大家介绍了关于Oracle表碎片对性能影响的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-03-03
  • 在Oracle表中进行关键词搜索的过程

    在Oracle表中进行关键词搜索的过程

    这篇文章主要介绍了在Oracle表中进行关键词搜索的过程,我们可以通过Oracle SQL Developer或Toad运行PL/SQL块,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06
  • Oracle归档日志文件(查看、配置、删除)

    Oracle归档日志文件(查看、配置、删除)

    归档日志是非活动的重做日志备份.通过使用归档日志,可以保留所有重做历史记录,本文主要介绍了Oracle归档日志文件(查看、配置、删除),具有一定的参考价值,感兴趣的可以了解一下
    2023-12-12
  • oracle中左填充(lpad)和右填充(rpad)的介绍与用法

    oracle中左填充(lpad)和右填充(rpad)的介绍与用法

    这篇文章主要跟大家介绍了关于oracle中左填充(lpad)和右填充(rpad)的相关资料,通过填充我们可以固定字段的长度,文中通过示例代码介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-08-08

最新评论