提到MySQL数据库优化,很多人脑海里会立即闪现出MySQL优化相关的词汇,例如:存储引擎、字段类型、范式、索引、缓存、表分区、SQL优化、主从复制等等。你可能会有这样的疑问,既然有这么多的优化方法可以选择,那什么时候才会考虑MySQL需要做主从复制了呢?MySQL主从复制又该如何实现?
首先需要说明的是,像微博、微信等超级APP后端的数据库架构是非常之复杂的,并非是简单的MySQL主从、读写分离,还会涉及到数据库集群、数据分片、跨机房同步等解决方案。但是,话又说回来,主从复制是MySQL实现其他复杂架构的基础和前提,我们可以从主从复制入手来学习MySQL架构,一步步由浅入深。
一般来说,在遇到以下几种情况时,就需要考虑调整MySQL架构,做主从复制、读写分离、分片等。
1、对于复杂的业务系统,经常出现锁表,严重影响整个系统的正常使用。
2、为了解决单点故障,需要对数据库做备份。
3、随着业务量的增加,单机性能已经优化到极致,I/O已经达到瓶颈,但仍然无法满足需要。