社区
疑难问题
帖子详情
关于锁
pbsh
2011-07-04 03:10:02
求教:Insert 必然会引起一个Key级的排它锁吗?什么情况下会导致Insert 语句长时间持有Key排它锁和Page意向排它?
...全文
153
9
打赏
收藏
关于锁
求教:Insert 必然会引起一个Key级的排它锁吗?什么情况下会导致Insert 语句长时间持有Key排它锁和Page意向排它?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
pbsh
2011-07-22
打赏
举报
回复
忘了结帖了。
原因是开发人员在Java里的事务忘了关。
mengmou
2011-07-17
打赏
举报
回复
当低粒度的对象上有排他锁时,对应高粒度的对象上必然有意向排他锁。
key指在索引的一行上加锁。insert在key上有排他锁已经是在最低粒度的对象上加锁,也就是最好的并发环境了。
事务不结束,锁就持续
可以用sql profiler跟踪一下,一目了然
weixy
2011-07-16
打赏
举报
回复
insert 肯定是排他锁,事务多长时间,key锁就多长时间。page锁是根据执行进行优化,锁的资源消耗比较大,如果系统发现行锁成本非常高(影响的行多)系统会自动升级为页锁
问题生
2011-07-04
打赏
举报
回复
记录行(rows),数据页(pages, 上百万记录行),扩展页(extends, 多个数据页)
我不知道你在insert的时候还并发了什么操作。不知道你是否使用了with的rowlock,nolock,readpast。
BigInt
2011-07-04
打赏
举报
回复
Insert 当然会引起一个Key级的排它锁
一般情况下,事务太大才会导致Insert 语句长时间持有Key排它锁和Page意向排它?
cd731107
2011-07-04
打赏
举报
回复
insert的时候肯定要排它的,对其他并发的读写都有影响
--小F--
2011-07-04
打赏
举报
回复
高深的问题,。
pbsh
2011-07-04
打赏
举报
回复
在做Insert的并发压力测试,问题出来了。
挨踢直男
2011-07-04
打赏
举报
回复
连续插一亿条记录
MySQL 事务和
锁
Re: MySQL 事务和
锁
==========================================# 事务是什么 特性:原子性、一致性、隔离性和持久性 类型:自动提交事务(default)、隐式事务、显式事务和分布式事务 事务并发带来的若干问题:脏读、不可重复读、幻象读和丢失更新 事务隔离级别:避免上述问题#
锁
是什么
锁
的粒度:三种粒度
锁
的特性(逐步提高等级) 表级
锁
:限制其它用户修改 行级
锁
:多版本的并发控制 死
锁
:产生条件和 MySQL 自动处理机制# 事物和
锁
的实际应用------------------------------------------------------------
关于
锁
机制
关于
锁
机制
对比MyISAM与InnoDB关于
锁
方面的区别
1. MyISAM与InnoDB关于
锁
方面的区别是什么 MyISAM支持表级
锁
,不支持行级
锁
InnoDB默认行级
锁
,也支持表级
锁
MyISAM表 由于MyISAM无事务,所以我们想测试
锁
,需要执行大数据量语句。 打开多个查询窗口(每个窗口代表一个SESSION,后用S1、S2代表两个窗口) 读
锁
(共享
锁
) 用S1,查询一个MyISAM表前200W条数据,同时S2更新第200001条,S2进入阻塞,等待S1查询执行完,S2才能执行 用S1,查询一个MyISAM表前200W条数据,同时S2查询第2000
封包过Integer对象不适合作为
锁
使用是因为在一段范围内相同的值会共享同一个实例
关于
锁
的说法错误的是(A) A、封包过Integer对象不适合作为
锁
使用是因为在一段范围内相同的值会共享同一个实例。 B、使用new出来的Integer实例作为对象的内置
锁
可能导致死
锁
。 C、在Java虚拟机中,调用intern()方法的String类似一个全局变量,使用intern()方法返回的String做
锁
对象可能会导致死
锁
。 D、Boolean类型不适合作为
锁
使用,因为Boolean只有两个值:true和false,相同的值在Java虚拟机中共享同一个实例。
ORACLE关于
锁
和V$LOCK的分析
ORACLE关于
锁
和V$LOCK的分析 为了实现并发,oracle数据库使用了
锁
机制。要了解
锁
,首先要了解视图v$lock。 v$lock这个视图列出 Oracle 服务器当前拥有的
锁
以及未完成的
锁
请求。如果你觉着 session 处于等待事件队列当中,那你应该检查视图v$lock。 v$lock中的常用列有以下列:
疑难问题
22,209
社区成员
121,730
社区内容
发帖
与我相关
我的任务
疑难问题
MS-SQL Server 疑难问题
复制链接
扫一扫
分享
社区描述
MS-SQL Server 疑难问题
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章