oracle死锁优化,Oracle性能优化之LockContention(转)

1、概念

DML事务使用row-level locks,查询不会锁定数据。锁有两种模式:exlusive、share。

锁的类型:

• DML or data locks:

– Table-level locks(TM)

– Row-level locks(TX)

• DDL or dictionary locks

一个transaction至少获得两个锁:一个共享的表锁,一个专有的行锁。Oracle server将所有的锁维护在一个队列里,队列跟踪了等待锁的用户、申请锁的类型以及用户的顺序信息。

Lock在下列情况会释放:commit;rollback;terminated(此时由pmon清理locks)。

Quiesced database:一个数据库如果除了sys和system之外没有其他活动session,这个数据库即处于quiesced状态。活动session是指这个session当前处于一个transaction中,或一个查询中,一个fetch中,或正占有某种共享资源。

2、可能引起lock contention的原因

不必要的高层次的锁;

长时间运行的transaction;

未提交的修改;

其他产品施加的高层次的锁。

解决lock contention的方法:锁的拥有者提交或回滚事务;杀死用户会话。

3、死锁

Oracle自动检测和解决死锁,方法是通过回滚引起死锁的语句(statement),但是这条语句对应的transaction并没有回滚,因此当收到死锁的错误信息后,应该去回滚改transaction的剩余部分。[@more@]

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux中g++与gcc的区别

转自:https://blog.csdn.net/bit_clearoff/article/details/53965514 Windows中我们常用vs来编译编写好的C和C代码;vs把编辑器,编译器和调试器等工具都集成在这一款工具中,在Linux下我们能用什么工具来编译所编写好的代码呢&#…

linux系统可以用迅雷吗,在Linux系统下使用wine运行迅雷5的方法

在Linux系统下使用wine运行迅雷5的方法一、下载ies4linux去 http://www.tatanka.com.br/ies4linux/page/Installation 下载ies4linux的文件包(目前版本为2.99),然后解压缩。注意:这个网站被大陆和谐了,需要跳墙。至于怎么跳,诸位就…

从C源代码到可执行文件的四个过程:预处理、编译、汇编、链接

从C源代码到可执行文件的四个过程:预处理、编译、汇编、链接 总览 我们将在Linux操作系统中,以C语言的Hello World程序为例,用gcc编译器分步执行这四个步骤。 我们有再熟悉不过的HelloWorld程序,hello.c: #include …

uboot引导linux内核,u-boot启动内核的几种方式

1.uboot启动内核的代码缩减如下:s getenv ("bootcmd");debug ("### main_loop: bootcmd\"%s\"\n", s ? s : "");if (bootdelay > 0 && s && !abortboot (bootdelay)){run_command (s, 0);}2.假设boot…

跟我一起写makefile: 概述、介绍、规则

跟我一起写makefile 概述、介绍、规则 转自:https://seisman.github.io/how-to-write-makefile/rules.html 概述 什么是makefile?或许很多Windows的程序员都不知道这个东西,因为那些Windows的集成开发环境(integrated developm…

linux内核中cent文件夹,Centos 中如何快速定制二进制的内核 RPM 包

1、rpm 制作前的环境准备:yum install -y ncurses-devel qt-devel rpm-build redhat-rpm-config asciidoc hmaccalc perl-ExtUtils-Embed xmlto audit-libs-devel binutils-devel elfutils-devel elfutils-libelf-devel newt-devel python-devel zlib-devel bc2、准…

TabError- inconsistent use of tabs and spaces in indentation 查验及解决方法

TabError: inconsistent use of tabs and spaces in indentation 查验及解决方法 报错代码 def eccv16(pretrainedTrue):model ECCVGenerator()if(pretrained):import torch.utils.model_zoo as model_zoomodel.load_state_dict(torch.load(/home/ps/.cache/torch/hub/check…

linux用xshell编辑文件,Linux远程管理器xshell和xftp使用教程

Xshell 是一个强大的安全终端模拟软件,它支持SSH1, SSH2, 以及Microsoft Windows 平台的TELNET 协议。Xftp 是一个基于 MS windows 平台的功能强大的SFTP、FTP 文件传输软件。安装完毕后打开xshell设置网站帐号信息设置主机信息设置服务器帐号设置字符集编码设置好了…

strict=False 但还是size mismatch for []: copying a param with shape [] from checkpoint,the shape in cur

strictFalse 但还是size mismatch for []: copying a param with shape [] from checkpoint,the shape in cur 问题 我们知道通过 model.load_state_dict(state_dict, strictFalse)可以暂且忽略掉模型和参数文件中不匹配的参数,先将正常匹配的参数从文件中载入模…

linux中权限765啥意思,Linux中的文件权限

Linux系统中的每一个文件都与多种权限类型相关联。在这些权限中,我们主要和三类权限打交道:用户(user)、用户组(group)和其他用户(others)。用户是文件的所有者;用户组是指和文件所有者在同一组的其他多个用户的集合;其他用户是除…

CV中的色彩空间大全

HSI、HSV、RGB、CMY、CMYK、HSL、HSB、Ycc、XYZ、Lab、YUV颜色模型 HSV颜色空间 HSV(hue,saturation,value)颜色空间的模型对应于圆柱坐标系中的一个圆锥形子集,圆锥的顶面对应于V1. 它包含RGB模型中的R1,G1,B1 三个面,所代表的…

linux 系统调用时怎么知道当前上下文属于那个进程,linux – 编写系统调用来计算进程的上下文切换...

如果您的系统调用只应报告统计信息,则可以使用内核中已有的上下文切换计数代码.struct rusage {...long ru_nvcsw; /* voluntary context switches */long ru_nivcsw; /* involuntary context switches */};您可以通过运行来尝试:$/usr/bin/time -v /bin/ls -R....V…

linux串口缓冲区的大小,linux-----------串口设置缓冲器的大小

转自:http://stackoverflow.com/questions/10815811/linux-serial-port-reading-can-i-change-size-of-input-bufferYou want to use the serial IOCTL TIOCSSERIAL which allows changing both receive buffer depth and send buffer depth (among other things). The maximum…

FLOPs、FLOPS、Params的含义及PyTorch中的计算方法

FLOPs、FLOPS、Params的含义及PyTorch中的计算方法 含义解释 FLOPS:注意全大写,是floating point operations per second的缩写(这里的大S表示second秒),表示每秒浮点运算次数,理解为计算速度。是一个衡量…

设置中文linux输入ubuntu,Linux_ubuntu怎么设置成中文?ubuntu中文设置图文方法,  很多朋友安装ubuntu后,发 - phpStudy...

ubuntu怎么设置成中文?ubuntu中文设置图文方法很多朋友安装ubuntu后,发现都是英文,看不懂要怎么办?其实ubuntu是可以设置成中文的,下文小编就为大家带来ubuntu中文的设置方法,一起去看下设置方法吧。ubuntu中文设置方…

科普 | 单精度、双精度、多精度和混合精度计算的区别是什么?

科普 | 单精度、双精度、多精度和混合精度计算的区别是什么? 转自:https://zhuanlan.zhihu.com/p/93812784 我们提到圆周率 π 的时候,它有很多种表达方式,既可以用数学常数3.14159表示,也可以用一长串1和0的二进制长串表示。 …

linux 磁盘分配 简书,linux 磁盘分区

1物理磁盘的构成: 盘面:由一圈一圈的磁道组成机械手臂:读取数据主轴马达:帮助机械手臂转动2 扇区:磁盘上存取数据的最小单位512字节按照扇区分配大小,如果数据只有一字节也会占用512字节簇:用若…

条件控制与条件传送详解

条件控制与条件传送详解 提要 CSAPP3e中文译本 3.6.5 用条件控制来实现条件分支 3.6.6 用条件传送来实现条件分支 CSAPP3e第三章前面主要是介绍了机器级代码的二进制形式和汇编形式、反汇编、x86汇编的基础指令、条件码及其访问方式等。 在介绍到汇编语言的条件分支时分了两…

联合体(union)的使用方法及其本质

联合体(union)的使用方法及其本质 转自:https://blog.csdn.net/huqinwei987/article/details/23597091 有些基础知识快淡忘了,所以有必要复习一遍,在不借助课本死知识的前提下做些推理判断,温故知新。 1…

linux设备驱动之串口移植,Linux设备驱动之UART驱动结构

一、对于串口驱动Linux系统中UART驱动属于终端设备驱动,应该说是实现串口驱动和终端驱动来实现串口终端设备的驱动。要了解串口终端的驱动在Linux系统的结构就先要了解终端设备驱动在Linux系统中的结构体系,一方面自己了解的不够,另一发面关于…