0

我们即将部署一些代码来截断我们的 mysql 4 数据库中的表。我们这样做是为了解决我们在临时表中看到(并且广为人知)的一些复制“怪异”。当我在代码审查中看到这一点时,我的下意识反应是“不”,但我无法支持它。

所以,问题是:我只是反应过度了吗?你有没有在 mysql 中使用 truncate table 遇到任何我们应该尽量避免的陷阱?在复制环境中截断如何?

4

1 回答 1

3

截断(至少在 Sybase 中,不是 100% 确定 mySql)

  • 不写入日志。意思是,没有恢复也没有回滚。

  • 不会自动重建索引统计信息,这意味着优化器在查看给定表时可能无法正常工作。

有关 mySQL 的具体细节/比较,请参阅本文

这是相关的 mySQL TFM

于 2009-09-29T04:51:50.290 回答