Oracle线上执行SQL特别慢的原因分析

一、背景:

线上反馈一张表select * from table where id=xxx语句执行特别慢,超过60s超时不能处理,第一直觉是索引失效了,开始执行创建索引语句create index index_name on table() online。但是执行了超过20分钟索引还没有创建成功,下意识觉得不正常。

按照过往经验,我应该查查是否有锁表的,但是当时不知道那根脑子抽筋了,在客户现场plsq中瞎点开了,突然发现一个窗口中的语句如下:

for update!!!

for update!!!

for update!!!

这敏感的字眼刺伤了我的眼睛。

再左上角一看,事务未提交的,谁干的!!!

赶快先回滚了,select和insert正常了,内心波涛汹涌,在公司群里发了图片发了牢骚。

二、锁表分析:

使用 plsql进行表数据编辑时如果是用for update 编辑,那么编辑完如果不提交就会直接锁表,还是全表锁。

一定一定务必使用rowid进行更新操作,使用rowid进行更新数据时,属于行级锁,编辑时表不受影响,直到最后一步提交时才当做一个原子去上锁/执行/释放锁一步完成。所以一定要用rowid,官方也推荐用rowid,弃用for update。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3246924.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

自动驾驶车道线检测系列—3D-LaneNet: End-to-End 3D Multiple Lane Detection

文章目录 1. 摘要概述2. 背景介绍3. 方法3.1 俯视图投影3.2 网络结构3.2.1 投影变换层3.2.2 投影变换层3.2.3 道路投影预测分支 3.3 车道预测头3.4 训练和真实值关联 4. 实验4.1 合成 3D 车道数据集4.2 真实世界 3D 车道数据集4.3 评估结果4.4 评估图像仅车道检测 5. 总结和讨论…

第59期|GPTSecurity周报

GPTSecurity是一个涵盖了前沿学术研究和实践经验分享的社区,集成了生成预训练Transformer(GPT)、人工智能生成内容(AIGC)以及大语言模型(LLM)等安全领域应用的知识。在这里,您可以找…

【Python与GUI开发】事件处理与打包分发

文章目录 前言 一、高级事件处理 1.自定义事件 2.拖放操作 3.复杂控件的事件处理 二、打包和分发 Tkinter 应用 1.PyInstaller 2.cx_Freeze 3.spec 文件 4.分发注意事项 三、实战示例:文件浏览器 总结 前言 在前面的讨论中,我们深入理解了 T…

Dev—c++小熊猫6.7.5免费下载攻略

点击蓝字 关注我们 今天我来给大家分享一个Dev—c小熊猫6.7.5免费下载攻略,内容如下 1. https://gitee.com/royqh1979/Dev-CPP/releases/tag/v6.7.5 点进这一个官网,一直往下滑,找到第三个选项,把它下载下来。 2. 安装时一些选择…

自制OJ在线判题网站

项目效果啊演示: 项目链接: Gitee:Oj: 自定义实现的OJ在线做题网站,自主实现代码沙箱 (gitee.com) GitHub:GitHub - SakanaYdy/Oj 仓库中含有完整的项目流程PDF文档,可以参考自定义OJ网站。 目前只支持Java语言,可以…

CSA笔记3-文件管理命令(补充)+vim+打包解包压缩解压缩命令

grep(-i -n -v -w) [rootxxx ~]# grep root anaconda-ks.cfg #匹配关键字所在的行 [rootxxx ~]# grep -i root anaconda-ks.cfg #-i 忽略大小写 [rootxxx ~]# grep -n root anaconda-ks.cfg #显示匹配到的行号 [rootxxx ~]# grep -v root anaconda-ks.cfg #-v 不匹配有…

大模型算法专家的逻辑推演

大家好,我是卢麒。 如今,各大电商平台对于大模型算法的研发已经历经了无数次的迭代。 本文基于大模型算法的一些实际应用,做一些分析。 一,大模型算法专家的技术应用 作为大模型算法专家,在技术应用时,…

使用windows批量解压和布局ImageNet ISLVRC2012数据集

使用的系统是windows,找到的解压命令很多都linux系统中的,为了能在windows系统下使用,因此下载Git这个软件,在其中的Git Bash中使用以下命令,因为Git Bash集成了很多linux的命令,方便我们的使用。 ImageNe…

set类和map类介绍和简单使用

目录 set类介绍与简单使用 set类 multiset类 map类介绍与简单使用 map类 multimap类 set类介绍与简单使用 set类是一种关联式容器,在数据检索时比序列式容器效率更高。本质是一个常规的二叉搜索树,但是为了防止出现单支树导致效率下降进行了相关优…

Linux 命令 —— top命令(查看进程资源占用)

文章目录 top 命令显示信息介绍top 命令使用 top 命令显示信息介绍 top 命令是 Linux/Unix 系统中常用的进程监控工具,可以实时动态显示系统中各个进程的资源占用情况,包括CPU、内存等。 进入 linux 系统,直接输入 top,回车&…

2014-2024年腾势D9N7N8EVDMI维修手册和电路图资料线路图接线图

经过整理,2014-2024年腾势汽车全系列已经更新至汽修帮手资料库内,覆盖市面上99%车型,包括维修手册、电路图、新车特征、车身钣金维修数据、全车拆装、扭力、发动机大修、发动机正时、保养、电路图、针脚定义、模块传感器、保险丝盒图解对照表…

中国星坤X0800HI系列线对板连接器:创新技术连接,引领智能家居未来!

近日,中国星坤推出的X0800HI系列线对板连接器,凭借其独特的设计和卓越的性能,引起了业界的广泛关注。 X0800HI系列线对板连接器在极小空间内实现了线对板的W-B连接,这不仅解决了传统连接方式中剥线和焊接的繁琐步骤,还…

Seata源码分析 全局事务开启提交回滚流程

文章目录 Seata全局事务源码Seata AT模式的设计思路源码入口TransactionalTemplate开启全局事务TM开启全局事务TC处理TM的请求 全局事务提交微服务端TM发送请求TC处理TM的请求RM处理TC的请求 全局事务回滚TM发送请求TC处理TM的请求RM处理TC的请求 补充知识微服务怎么找TC服务 S…

配置三层链路聚合增加链路带宽并提高可靠性的示例

规格 适用于所有版本的AR路由器。 AR161、AR161W、AR169、AR161G-L不支持该示例。 组网需求 在某小型企业网环境中部署了两台AR路由器Router_1和Router_2,Router_1作为用户接入设备,Router_2作为网络接入设备。为了保证用户的带宽,当用户量…

【Kaggle】练习赛《保险交叉销售的二分类预测》

前言 本篇文章介绍的是Kaggle月赛《Binary Classification of Insurance Cross Selling》,即《保险交叉销售的二元分类预测》。这场比赛非常适合作为机器学习入门者的实践练习。在之前的几期练习赛中,我们从多个角度详细讲解了探索性数据分析&#xff0…

爆火出圈的Robotaxi,会是自动驾驶的最优解吗?

八年前,百度决定投资无人驾驶时,李彦宏说:“它是人工智能最顶级的工程,将彻底改变人类的出行和生活。” 八年后,萝卜快跑从理想变成现实,奔跑在全国各地的街头,诠释了什么叫“科技不该高高在上…

2.javaWeb_请求和响应的处理(Request,Response)

2.请求和响应的处理 文章目录 2.请求和响应的处理一、动态资源和静态资源javax.servlet(包) 二、Servlet体系1.简介2.HttpServlet3.Servlet生命周期 三、Request对象1.ServletRequest1)ServletRequest主要功能有:2)ServletRequest类的常用方法: 2.HttpServletReques…

72B大模型分片部署

一、定义 目的官方教程案例小模型修改device_map 方式二 二、实现 目的: 将72B大模型 部署到2张gpu 显卡中。官方教程 帖子:https://huggingface.co/blog/accelerate-large-models实现 1. 自动部署 model AutoModelForCausalLM.from_pretrained(mod…

JUC 包中的 Atomic 原子类总结

人不走空 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌赋:斯是陋室,惟吾德馨 目录 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌…

【Java数据结构】初始线性表之一:链表

为什么要有链表 上一节我们描述了顺序表:【Java数据结构】初识线性表之一:顺序表-CSDN博客 并且进行了简单模拟实现。通过源码知道,ArrayList底层使用数组来存储元素。 由于其底层是一段连续空间,当在ArrayList任意位置插入或者…