1. 什么是统计信息
RDS MySQL 5.5 和 5.6 查询优化器依据表的统计信息计算不同执行计划的代价,因此表上统计信息的准确对查询优化器选取正确的执行计划至关重要。
2.什么情况下需要收集统计信息
当表上有大量的数据修改时,比如从数据源加载大量数据(ETL)或者大量历史数据归档,建议手动收集下表上的统计信息,以保证查询优化器可以选取最优的执行计划。
3. 如何收集统计信息
收集表的统计信息可以通过 analyze 命令来收集统计信息。analyze 用来分析和存储表的关键字的分布,使得系统获得准确的统计信息,影响 SQL 的执行计划的生成。对于数据基本没有发生变化的表,不需要经常进行表分析。但是如果表的数据量变化很明显,实际的执行计划和预期的执行计划不同的时候,执行一次表分析可能有助于产生预期的执行计划。
analyze table $table_name;
[/url]
4.收集统计信息的注意事项
analyze table期间将对全表加只读锁,建议在业务低峰期执行。
如问题还未解决,请联系[url=https://selfservice.console.aliyun.com/ticket/createIndex.htm]售后技术支持;
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。