高可用
MYSQL主从复制的过程?
- 主库两段提交后,更新BIN LOG日志
- 从库复制BIN LOG日志到暂存日志中
- 从库回放暂存的BIN LOG日志
MYSQL 主从复制提供了几种模式?
- 同步复制
- 异步复制,可能会丢失数据,宕机后从库变成主库
- 半同步复制
MYSQL主从复制数据不一致怎么解决?
- 使用缓存,写入数据的时候先写入缓存,查询的时候先直接查询缓存
- 直接查询主库
MYSQL主从架构中,读写分离怎么实现?
- 增删改走主库,查询走从库,但是这样改动对原有代码有侵入性
- 使用中间件,或部署中间件MYCAT实现主从同步
主从复制中 主库挂了怎么办?
主从复制没有解决这个问题,需要其他的高可用组件比MHA,在主库发生宕机的时候,会自动剔除主库,选择新的主库,保证业务正常进行
什么是分库分表?
- 一般一张MYSQL表的数据量只能500万左右,所以为了存储更多的数据,要进行分表
- 分库是为了高可用,防止主数据库宕机,并且缓解并发请求,实现主从库的读写分离等
分库分表会有哪些问题?
- 分布式事务问题,使用分布式事务中间件
- 分表会有全局ID唯一性问题,雪花算法
- 跨库跨表读写问题