首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >没有选择的InnoDB行级锁?

问没有选择的InnoDB行级锁?
EN

Database Administration用户
提问于 2013-01-08 18:37:35
回答 1查看 998关注 0票数 0

我有几个(>30) MySQL客户机并发插入到InnoDB表中。我一直遇到锁等待超时,不知道原因。情况如下:

每个客户端重复运行以下事务:

代码语言:javascript
复制
Start transaction
Insert one row into table A
for i = 1 to 22
  Do some time-consuming calculation (30 sec)
  Insert results into table B
end
Commit transaction

当插入表A时,锁等待超时会发生。表B的主键与表A的主键由另一个字段增强时相同。表B在表A中有一个外键。

任何地方都没有选择。不插入两次行。事务隔离级别为REPEATABLE_READ。

显示引擎INNODB状态显示为一些活动事务的36行级别锁。

我不明白为什么会有锁。有人能告诉我发生了什么事吗?

EN

回答 1

Database Administration用户

发布于 2014-09-24 18:45:23

MySQL占用了太多的innodb buffer pool大小来锁定表。

将innodb_buffer_pool_size=2g插入到my.cnf文件中,这很可能是在/etc/mysql/中

票数 -1
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/31611

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档