首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当删除大型表时,预期的性能影响是什么?

问当删除大型表时,预期的性能影响是什么?
EN

Database Administration用户
提问于 2012-02-10 16:06:44
回答 1查看 816关注 0票数 7

我有一个需要在生产环境中删除的100G+无害数据库表。我正在努力做到这一点,不间断地服务。

该表不再被写入,需要丢弃以释放空间。我的MySQL版本是5.1.52。

当这个表被删除时,对性能的预期影响是什么?我正在考虑通过删除行然后进行优化来慢慢缩小它。但是,如果不是更多的话,优化会使表成为磁盘IO密集型的副本。

EN

回答 1

Database Administration用户

发布于 2012-02-10 16:17:01

批量删除,然后进行优化,这确实是最糟糕的事情了。每个删除都将作为事务执行,每个优化都将有效地重新记录巨型表的剩余内容。

把它想成这样。你有一个5G表,删除0.5G,优化(复制4.5gig文件),删除0.5gigs(复制4.0gig文件)等等。

实际上,与每个优化相关的开销不仅仅是在文件系统上复制那么多数据,因为这相当于将所有这些行插入到一个新的表中,以及随之而来的所有事务开销。

删除表应该是最有效的方法。

编辑:下面是一些彻底的基准测试

http://www.mysqlperformanceblog.com/2011/04/20/drop-table-performance/

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

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

复制
相关文章

相似问题

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