当前位置:  开发笔记 > 编程语言 > 正文

在MySQL中,"开销"意味着什么,它有什么不好,以及如何解决它?

如何解决《在MySQL中,"开销"意味着什么,它有什么不好,以及如何解决它?》经验,为你挑选了3个好方法。

简单的问题,但它现在一直唠叨我......

什么是MySQL中的"开销",我应该担心吗?

点击"优化表"确实是真的吗?



1> Jasper..:

似乎开销是数据库用于运行某些查询的临时磁盘空间,因此您应该只担心这是否真的很高.

您可以将"优化表格"与硬盘碎片整理进行比较.

我引用:

随着时间的推移,每个数据库都需要某种形式的维护,以使其保持最佳性能水平.清除已删除的行,重新排序,压缩,管理索引路径,进行碎片整理等,这就是mysql中的OPTIMIZATION和其他数据库中的其他术语.例如,IBM DB2/400将其称为REORGANIZE PHYSICAL FILE MEMBER.

这有点像改变你的汽车油或调整.你可能认为你真的没必要,但通过这样做,你的车运行得更好,你获得更好的汽油里程等.一辆获得大量里程的汽车需要更频繁的调整.大量使用的数据库需要相同的数据库.如果您正在进行大量的UPDATE和/或DELETE操作,特别是如果您的表具有可变长度列(VARCHAR,TEXT等),则需要保持调整状态.


那个引用来自哪里?我在谷歌找到了很多结果.

2> Quassnoi..:

如果您正在谈论phpMyAdmin调用的东西overhead,那么它是相对于同一数据文件的理想大小的表数据文件的实际大小(就像刚刚从备份恢复时那样).

出于性能原因,MySQL在删除或更新行后不会压缩数据文件.

overhead对于表扫描是不好的,即当您的查询需要遍历所有表值时,它将需要查看更多的空白空间.

您可以overhead通过运行OPTIMIZE TABLE来摆脱压缩表和索引.


mysql文档大小说"如果删除了表的大部分,或者如果对可变长度行的表进行了很多更改",则应该使用"OPTIMIZE TABLE",这是我的情况,谢谢:)

3> Shankar Prak..:

开销是表的Data_free,即已分配但未使用的字节数. 我们可以通过SQL命令SHOW TABLE STATUS找到它.它是您桌子分配大小的可用空间.

推荐阅读
k78283381
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有