首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >优化MyISAM表的磁盘空间:如果已经进行优化,更改和分析有什么好处?

优化MyISAM表的磁盘空间:如果已经进行优化,更改和分析有什么好处?
EN

Database Administration用户
提问于 2013-06-17 18:25:51
回答 1查看 3.7K关注 0票数 4

按照这个职位,为了优化MyISAM表的存储,您需要:

代码语言:javascript
复制
OPTIMIZE TABLE ;
ALTER TABLE ENGINE=MyISAM ; 
ANALYZE TABLE ;

很明显,优化对磁盘空间的作用是什么,但是在优化后使用时会改变和分析什么呢?我专门询问磁盘存储,例如,我不关心分析改进的连接性能,等等。

EN

回答 1

Database Administration用户

回答已采纳

发布于 2013-06-17 19:14:39

那是我的两年前的旧服务器故障帖子。原谅我,这句话措辞有点不对。它应改为:

至于MyISAM,您需要定期运行以下操作之一:

  • 优化表myisam-tablename
  • 修改表myisam-tablename ENGINE=MyISAM;分析表myisam-tablename

好的,我刚用ServerFault修好了它。

CLARIFICATION

OPTIMIZE TABLE tblname;执行以下操作:

代码语言:javascript
复制
ALTER TABLE ENGINE=MyISAM tblname; 
ANALYZE TABLE tblname;

根据MySQL文档onOPTIMIZE表

对于MyISAM表,OPTIMIZE TABLE的工作方式如下:如果表已删除或拆分行,则修复表。如果索引页未排序,则对其进行排序。如果表的统计数据不是最新的(并且无法通过对索引排序来完成修复),则更新它们。

表中的统计数据的最后一部分是ANALYZE TABLE所做的。

如果不希望OPTIMIZE TABLE tblname;执行ANALYZE TABLE tblname;,则必须执行ALTER TABLE tblname ENGINE=MyISAM;

警告:对于具有大量插入、更新和删除操作的MyISAM来说,这可能不是一个好主意,因为

  • 这将使表和索引统计数据很快失效。
  • 陈旧的统计信息将导致查询优化器对查询解释计划做出错误的选择。

请坚持使用OPTIMIZE TABLE

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

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

复制
相关文章

相似问题

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