mysql数据库的读写分离

好久不见. 提交于 2020-02-29 10:01:59

一、首先读写分离呢 一般的结构(1主(master) 2从(slave))

 
数据库的读写分离结构

读写分离的原理:就是主服务器每当新增数据或者删除数据,都会有二进制日志去记录这些操作,然后从数据库就根据日志来自动执行相同的动作,这样就达到从数据会自动同步主数据库的数据。

二、读写分离配置(1主2从)---说明:我是先做好,后面才补上博客的

1、首先,先去服务里面停止掉mysql57(3306端口)(在服务上右键停止就可以了).mysql3307 mysql3308暂时忽略(后面讲到)

 
服务列表

2.接下来找到你的mysql57(3306端口)安装目录 例图 我自己的安装目录

 
mysql的安装目录

3.将上面的文件夹复制2份到其它地方去,改名后面加上 3307 3308(命名只是为了区分)

 
复制2份到其它地方

4、接下来进入到3307的文件夹,将my-default.ini这个文件 重命名为my.ini

 
重命名为my.ini

5、接下来我们要在当前文件夹新增data文件夹,进行任何操作最好先停止掉mysql的服务

 
新增data文件夹

6、然后我们去找到mysql57(3306端口)的data文件,将里面的东西可以全部拷贝到3307 data文件夹里面去

 
3306端口的数据库

三、开始文件里面的配置

1、首先我们找到mysql57(3306端口)的文件配置

 
3306端口的my.ini文件

如图,这是3306端口的配置文件,我们需要在上面加上log-bin=mysql-bin  开启二进制日志, binlog-do-db=你想同步的数据库

server-id=1

2、接下来配置3307数据库的文件配置

 
3307端口的配置文件

这是3307的配置文件,上面的replicate-do-db=你想要同步的数据库  

3、配置完成后 接下来我们需要将3307加入到服务中

 
 

 

 

cmd控制台

首先进入到3307的bin目录下,然后输入 mysql -install mysql3307(或者是mysqld -install mysql3307)(这是自定义服务的名字)  ,我们可以启动3307服务,然后用数据库工具连接

 
3307服务

四、最后一步 数据库里面配置
1.

 
 

打开数据库工具连接上主数据库相当于我连接的 localhost(3306端口)    mysql-slave-3307(从数据库),

然后在localhost数据库里面查询  show Master status

就会出现主数据库的信息 file position要记住

 

2.在3307从数据库上新建查询输入

change master to master_host='127.0.0.1', master_port=3306,master_user='root',master_password='root',master_log_file='mysql-bin.000001',master_log_pos=154;

 
3307数据库执行脚本

上面的master_user=数据库账号  master_password=数据库密码  master_log_file=上一步骤查询出来的file  master_log_pos=上步骤查询出来的position

3.最后执行 start slave 开启主从复制(3308从数据库也是按照3307得到步骤一样配置)

 
 
 
 
0人点赞
 
mysql
 
 


作者:我我我不是明
链接:https://www.jianshu.com/p/0eaacc73fa70
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
 
 
-----------------------------------------------------------------------------------------------------------------------------------------------------

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!