瑞吉外卖项目优化-MySQL主从复制——读写分离

目前数据库存在的问题,单点故障,单点压力大

瑞吉外卖项目优化-MySQL主从复制——读写分离_第1张图片

解决的办法:读写分离

瑞吉外卖项目优化-MySQL主从复制——读写分离_第2张图片

一、MySQL的主从复制:

主从复制是一个异步IO的操作,原理就是基于MySQL的binlog日志,从库将主库的binlog日志拷贝到它的中继日志中,然后重做中继日志里面的时间,将改变的数据应用到自己的数据库中
瑞吉外卖项目优化-MySQL主从复制——读写分离_第3张图片
瑞吉外卖项目优化-MySQL主从复制——读写分离_第4张图片
瑞吉外卖项目优化-MySQL主从复制——读写分离_第5张图片
在这里插入图片描述
瑞吉外卖项目优化-MySQL主从复制——读写分离_第6张图片
瑞吉外卖项目优化-MySQL主从复制——读写分离_第7张图片
瑞吉外卖项目优化-MySQL主从复制——读写分离_第8张图片
在这里插入图片描述
注意以下的master_log_file和master_log_pos要和上面主库上的一样,
瑞吉外卖项目优化-MySQL主从复制——读写分离_第9张图片

这里如果虚拟机是复制克隆的,就要去改一下MySQL的 UUID,否则下面的主从配置的IO线程是no

瑞吉外卖项目优化-MySQL主从复制——读写分离_第10张图片

这样数据库的主从复制设置就完成了;

二、读写分离:使用的是Sharding-JDBC框架

瑞吉外卖项目优化-MySQL主从复制——读写分离_第11张图片
瑞吉外卖项目优化-MySQL主从复制——读写分离_第12张图片

使用sharding-jdbc实现读写分离的步骤

在这里插入图片描述

第二步

瑞吉外卖项目优化-MySQL主从复制——读写分离_第13张图片
瑞吉外卖项目优化-MySQL主从复制——读写分离_第14张图片

第三步:如果没有第三步就会出现以下问题

在这里插入图片描述
所以需要在配置文件中插入以下代码:允许bean覆盖
在这里插入图片描述

你可能感兴趣的:(java,mysql,数据库,java)