首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL开销:级联上的InnoDB或MyISAM单独删除

MySQL开销:级联上的InnoDB或MyISAM单独删除
EN

Stack Overflow用户
提问于 2011-07-10 11:03:26
回答 2查看 179关注 0票数 0

我很好奇,在服务器使用的资源方面,哪个更具成本效益:是使用MyISAM引擎遍历多个表的On Cascade Delete,还是多个delete语句?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-07-10 15:46:13

级联删除有多个优点:

它可以使用事务,所以如果一次删除失败,所有的删除都将失败,数据仍将保留使用行级锁( consistent

  • InnoDB
  • )。要从MyISAM中删除记录,必须锁定整个表。如果有很多并发查询,InnoDB会更快。
  • 正如@Itay Moav所说,在级联删除的情况下,你将只执行一个查询,而在多个删除的情况下-多个查询。
票数 2
EN

Stack Overflow用户

发布于 2011-07-10 12:04:28

第二个选项还需要系统与mysql客户端和mysql服务器进行对话和起泡,而第一个选项只需一次调用即可完成。如果您将其全部放在一个事务中,也更容易使用InnoDB进行修复。

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

https://stackoverflow.com/questions/6638911

复制
相关文章

相似问题

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