正在进行事务回滚.估计回滚已完成:0%.估计剩余时间:0秒.

在生产环境中执行数据表字段长度变更时,遇到长时间执行的问题,会话状态显示为suspended,等待类型为PAGEIOLATCH_EX。了解到这可能是数据页未缓存导致的。为了避免堵塞和数据丢失,决定不重启服务,而是通过KILL进程并观察回滚进度。最终,通过分析和解决堵塞源头,成功完成回滚事务。
摘要由CSDN通过智能技术生成

今天在给数据表字段做长度变更时,遇到一点问题.由于是生产环境,在为该表做变更操作时刻意挑的操作低峰时段.正常10m左右可以完成的操作执行了20分钟左右还是正在执行中.查询会话状态,发现该会话状态是suspended,等待类型是PAGEIOLATCH_EX.

这里写图片描述
查看网上对该等待类型的解释,原来是数据页没有缓存在内存里。SQL Server在缓冲池里找到一个页面的空间,在上面申请一个EX的latch,防止数据从磁盘里读出来之前,有别人也来读取或修改这个页面。对整个page加锁相当于是在内存中预定了一片空间用于存放需要从磁盘中physical read来的page。
(详细链接:http://www.cnblogs.com/xwdreamer/archive/2012/08/30/2663232.html
为防止造成大量堵塞,影响业务,KILL掉该进程,发现此时该会话状态变成下图状态

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值