位置: 编程技术 - 正文

记一次公司仓库数据库服务器死锁过程及解决办法(仓库记录)

编辑:rootadmin

推荐整理分享记一次公司仓库数据库服务器死锁过程及解决办法(仓库记录),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:仓库记录,仓管怎么记仓库东西,公司仓库库存明细表格范本,公司仓库库存明细表格范本,仓库如何记账,仓库记录,公司仓库库存明细表格范本,仓库记录,内容如对您有帮助,希望把文章链接给更多的朋友!

死锁的四个必要条件:

互斥条件(Mutual exclusion):资源不能被共享,只能由一个进程使用。

请求与保持条件(Hold and wait):已经得到资源的进程可以再次申请新的资源。

非剥夺条件(No pre-emption):已经分配的资源不能从相应的进程中被强制地剥夺。

循环等待条件(Circular wait):系统中若干进程组成环路,该环路中每个进程都在等待相邻进程正占用的资源。

仓库拣货卡死,排查了数据库的很多地方,都没有头绪,最后到SQL Server 错误日志里查看,终于发现了蛛丝马迹

咋一看上面的错误信息,可以发现两条相同的语句造成的死锁,但是这么短的语句不可能持有排他锁太久

Notice: Undefined index: CMSdown in /data/webroot/gcms/lib/Api/Open/Article.php on line img////_ac5e.jpg" alt="查看图片" />

再仔细分析一下错误日志,发现都死锁在同一个非聚集索引上,再问了一下开发,开发那边说,这条语句是在一个大事务里面,这个事务会做7、8件事

Notice: Undefined index: CMSdown in /data/webroot/gcms/lib/Api/Open/Article.php on line img////_acec2f8.jpg" alt="查看图片" />

索引属性

Notice: Undefined index: CMSdown in /data/webroot/gcms/lib/Api/Open/Article.php on line img////_aedc3.png" alt="查看图片" />

还有索引里面的数据,发现很多重复值

记一次公司仓库数据库服务器死锁过程及解决办法(仓库记录)

Notice: Undefined index: CMSdown in /data/webroot/gcms/lib/Api/Open/Article.php on line img////_aed.jpg" alt="查看图片" />

SQL语句是这样的

下图为语句生成的执行计划

Notice: Undefined index: CMSdown in /data/webroot/gcms/lib/Api/Open/Article.php on line img////_aee.jpg" alt="查看图片" />

当时的情况是大量SQL语句被阻塞,而阻塞的语句正是下面这条语句

Notice: Undefined index: CMSdown in /data/webroot/gcms/lib/Api/Open/Article.php on line img////_ac.jpg" alt="查看图片" />

解决方法

上面得出几个症状

1、update语句是在一个大事务里面,事务太大导致其他session等待排他锁的时间变长

2、大家都在使用同一个非聚集索引,并扫描PricingExpressProductCode字段

3、索引里的重复值很多

从上面的症状基本可以判断,这个非聚集索引无啥用,可以禁用之

禁用之后,死锁消失,问题解决,仓库的怨气也随之消失

这一次排查过程时间有点长,但是很好定位,SQL Server错误日志给出了足够的信息定位死锁问题,所以遇到问题的时候一定要分析清楚日志

实用的银行转账存储过程和流水号生成存储过程 银行转账存储过程USE[BankInfor]GOSETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOALTERPROCEDURE[dbo].[Transfer](@inAccountint,@outAccountint,@amountfloat)asdeclare@totalDepositfloat;beginselect@totalD

asp.net中如何调用sql存储过程实现分页 首先看下面的代码创建存储过程1、创建存储过程,语句如下:CREATEPROCP_viewPage@TableNameVARCHAR(),--表名@FieldListVARCHAR(),--显示列名,如果是全部字段则

SQL Server 附加数据库时Read-Only错误的解决方案 SQLServer附加数据库文件时出现了Read-Only错误,附加的时候,系统提示mdf文件为只读,可是打开文件属性,这个属性不为只读。该怎么解决呢?本文我

标签: 仓库记录

本文链接地址:https://www.jiuchutong.com/biancheng/347380.html 转载请保留说明!

上一篇:开窗函数有浅入深详解(一)(开窗函数窗口范围)

下一篇:实用的银行转账存储过程和流水号生成存储过程(实用的银行转账怎么转)

  • 小规模纳税人享受1%的税率
  • 小规模纳税人外账处理
  • 电子税务局自然人怎么切换到企业
  • 小规模差额申报怎么申报
  • 金税盘没有报税管理怎么把发票明细怎么导出
  • 什么企业可以开增值税专用发票
  • 网上报税需要准备什么资料
  • 做账时计提费用不含税怎么取整
  • 企业所得税返还计入什么科目
  • 签订合同未履行属于什么行为
  • 计提费用怎么入账
  • 退货报废计入哪类费用
  • 支付城镇土地使用税会计科目
  • 以前年度少计费用,调整分录
  • 企业职工福利费标准是什么
  • 分支机构多预缴应该怎么退税呢?
  • 离退休人员再任职的规定
  • 股权转让有溢价怎么做账
  • 股权转让的印花税是按照什么金额缴纳
  • 营改增文化体育服务包括哪些
  • 金银首饰零售消费税税收优惠
  • 签发空头支票的赔偿金
  • 专项储备期末有余额吗
  • 小规模纳税人每季度超过30万交税
  • 个体工商户核定征收标准2023
  • 累计带薪缺勤的核算和计量
  • 土地增值税内控报告
  • php有很多流行的mvc框架,这些框架可以
  • 以固定资产对外投资影响现金流量吗
  • react组件如何设置dom
  • 二级资本债向谁发行
  • 承包经营所得税税率表
  • PHP基于国秘s2m加解密的处理方式
  • thinkphp连接查询少数据
  • 前端开发软件哪个最好
  • php抽象类可以多继承吗
  • html入门基础
  • pytorch x.view
  • 全网最详细的李白解说来了
  • centos安装epel
  • 无形资产资本化和费用化的区别
  • 快递怎么做账单
  • 计提坏账准备不会影响应收账款账面价值
  • 营业执照更换法人需要哪些手续
  • 增值税普通发票有什么用
  • 购买汽车抵扣增值税
  • sqldbmon
  • 酒店收入是什么收入
  • 请培训老师的费用怎么处理
  • 小规模纳税属于什么科目
  • 纳税人发生应税行为
  • 疫情期间社保减免优惠政策几个月
  • 支付宝收入什么意思
  • 公司员工借款后还款收据怎么填
  • 营业外支出的具体内容
  • 影响以前年度损益的科目
  • 税收分类编码怎么选
  • mysql 5.7.11 winx64安装配置方法图文教程
  • 计算机二级考试时间2024
  • mysql转换数据类型
  • window 开机启动
  • linux系统中怎么全选
  • xp文件夹选项不见了怎么办
  • linux shell 函数参数
  • 重装win7系统后鼠标键盘不能用
  • win10电脑cmd命令大全
  • win10系统怎么设置最好
  • android入门教程
  • perl sub
  • perl ne
  • 深入学习习总书记系列讲话精神
  • java模拟浏览器点击
  • APP中javascript+css3实现下拉刷新效果
  • JavaScript基础教程
  • jquery筛选器
  • 国税局和税务局哪个级别高
  • 出口退税函调回函时间
  • 卷票发票丢失怎么办理
  • 重庆准生证网上怎么申请领取
  • 北京市朝阳区地税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设