Mysql大表优化

首先切分是最好不能做首选的方案。
在不切分的情况下:
1.优化索引
2.加缓存 memcached,redis
3.以上都做了之后,还是慢的话,做M/M复制或M/S复制,读写分离。用第三方工具例如360的atlas
4.使用mqsql自带的分区表,对应用来说是透明且代码不需要更改,sql语句得针对分区进行优化,带上查询分区条件的列,否则会扫描全表。
5.垂直拆分。大系统变小系统,分布式
6.水平拆分。成本最好,技术难度最大,选择合理的sharding key。

索引和sql优化:不只是根据sql去建索引,而是sql也要相应的优化,根据不同的引擎,表数据的分布情况,索引,数据库锁策略,最终可能查询结果相差很大。优化要从整体考虑,有时可能优化一条却导致其他,查询查询变低了。所以找到那个平衡点很重要。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容