Mysql优化步骤

1、 优化sql和索引;
2、加缓存。memcached,redis;
3、做主从复制或主主复制,读写分离,可以在应用层做,效率高,也可以用中间件,如atlas,mycat,Sharding-JDBC;
4、mysql分区表,对应用是透明的,无需更改代码,但是sql语句是需要针对分区表做优化的,sql条件中要带上分区条件的列,从而使查询定位到少量的分区上,否则就会扫描全部分区,另外分区表还有一些坑,在这里就不多说了;
5、先考虑垂直拆分,将大系统按业务拆分成多个系统,数据库同时也按业务模块拆出来;
6、最好才考虑水平切分,分为单库多表和多库多表,这一步最考验技术水平,要选择符合业务的sharding key,sql中尽量带sharding key,将查询定位到所属的库所属的表中去。

这就是mysql一般的优化步骤,难度也是由低到高。当然这只是参看,落地还需要根据自己的情况来选择。

你可能感兴趣的:(Mysql优化步骤)