解决Oracle锁表的方法

server/2024/10/18 19:13:33/

        在实际工作中,并发量比较大的项目,经常会出现锁表的问题,下面我将复现这个问题,并给出解决方法。

一、问题复现

1、session1修改aabb表的B字段为迪迦奥特曼,但是不提交该事务。

2、session2也修改这行的这个字段。

        发现该字段的执行时间一直停滞,无法执行。两个session会相互争抢 ,一直无法执行,进而导致系统卡顿崩溃

二、解决方法

1、查询竞争资源的表或语句

运行一下语句查询锁表的语句。

-- 查询未提交事务的session信息,注意执行以下SQL,用户需要有DBA权限才行
SELECTL.SESSION_ID,S.SERIAL#,L.LOCKED_MODE AS 锁模式,L.ORACLE_USERNAME AS 所有者,L.OS_USER_NAME AS 登录系统用户名,S.MACHINE AS 系统名,S.TERMINAL AS 终端用户名,O.OBJECT_NAME AS 被锁表对象名,S.LOGON_TIME AS 登录数据库时间
FROM V$LOCKED_OBJECT LINNER JOIN ALL_OBJECTS O ON O.OBJECT_ID = L.OBJECT_IDINNER JOIN V$SESSION S ON S.SID = L.SESSION_ID
WHERE 1 = 1

查询结果如下 

2、强制释放资源 

运行一下语句可以杀死对应的锁表进程

通用语句:强制 结束/kill 锁表会话语法
ALTER SYSTEM KILL SESSION 'SESSION_ID, SERIAL#';示例语句:强制杀死session1,让session2可以修改a = '3228730285638861'的那条记录
ALTER SYSTEM KILL SESSION '4984, 28973';

 杀死session1的进程后,session2顺利执行。

 


http://www.ppmy.cn/server/24008.html

相关文章

AIGC:开启内容创作新纪元,我们如何看待它的影响与前景?

AIGC的概念 AIGC(Artificial Intelligence Generated Content)的概念主要是指人工智能生成内容。 这是一种新的人工智能技术,它利用人工智能模型,根据给定的主题、关键词、格式、风格等条件,自动生成各种类型的文本、图…

gateway全局token过滤器

添加gateway依赖 <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-gateway</artifactId></dependency>创建一个tokenFilter 实现全局过滤器GlobalFilter,并且实现fitler方法 Value("${…

php7.4在foreach中对使用数据使用无法??[]判读,无法使用引用传递

代码如下图&#xff1a;这样子在foreach中是无法修改class_history的。正确的应该是去掉??[]判断。 public function actionY(){$array [name>aaa,class_history>[[class_name>一班,class_num>1],[class_name>二班,class_num>2]]];foreach ($array[class_…

linux第八章 git连接本地仓库和gitee

&#x1f436;博主主页&#xff1a;ᰔᩚ. 一怀明月ꦿ ❤️‍&#x1f525;专栏系列&#xff1a;线性代数&#xff0c;C初学者入门训练&#xff0c;题解C&#xff0c;C的使用文章&#xff0c;「初学」C&#xff0c;linux &#x1f525;座右铭&#xff1a;“不要等到什么都没有了…

机器人技术概述_1.机器人的概念及定义和发展历程

1.机器人的概念 机器人的英文名词是Robot&#xff0c;Robot一词最早出现在1920年捷克作家卡雷尔•卡佩克&#xff08;Karel Capek&#xff09;所写的剧本中&#xff0c;剧中的人造劳动者取名为Robot&#xff0c;捷克语的意思是“苦力”“奴隶”。英语的Robot一词就是由此而来的…

mysql面试题九(SQL优化)

目录 1.一条 SQL 是如何执行的 2.索引失效的几种情况 3.EXPLAIN 4.Where 子句如何优化 5.超大分页或深度分页如何处理 6.大表查询如何优化 7.分库分表 基本概念 分库分表方法 水平拆分 垂直拆分 分库分表后的注意事项 1.一条 SQL 是如何执行的 在MySQL中&#xff0…

Docker基础+虚拟化概念

目录 一、虚拟化简介 1、虚拟化概述 2、cpu的时间分片&#xff08;cpu虚拟化&#xff09; 3、cpu虚拟化性性能瓶颈 4、虚拟化工作 4.1虚拟机工作原理 4.2两大核心组件:QEMU、KVM 4.2.1QEMU&#xff1a; 4.2.2KVM&#xff1a; 5、虚拟化类型 ①全虚拟化&#xff1a; …

docker compose安装redis

一、安装准备 在docker hub查看redis镜像版本。查看地址如下&#xff1a; Dockerhttps://hub-stage.docker.com/_/redis/tags 二、拉取docker镜像 我这里用redis:6.2.14版本&#xff0c;先拉取镜像。命令如下&#xff1a; docker pull redis:6.2.14 查看刚刚下载的镜像&am…