天天看点

mysql数据库读写分离_mysql数据库的读写分离

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

mysql数据库读写分离_mysql数据库的读写分离

数据库的读写分离结构

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

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

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

mysql数据库读写分离_mysql数据库的读写分离

服务列表

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

mysql数据库读写分离_mysql数据库的读写分离

mysql的安装目录

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

mysql数据库读写分离_mysql数据库的读写分离

复制2份到其它地方

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

mysql数据库读写分离_mysql数据库的读写分离

重命名为my.ini

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

mysql数据库读写分离_mysql数据库的读写分离

新增data文件夹

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

mysql数据库读写分离_mysql数据库的读写分离

3306端口的数据库

三、开始文件里面的配置

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

mysql数据库读写分离_mysql数据库的读写分离

3306端口的my.ini文件

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

server-id=1

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

mysql数据库读写分离_mysql数据库的读写分离

3307端口的配置文件

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

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

mysql数据库读写分离_mysql数据库的读写分离

cmd控制台

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

mysql数据库读写分离_mysql数据库的读写分离

3307服务

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

1.

mysql数据库读写分离_mysql数据库的读写分离

打开数据库工具连接上主数据库相当于我连接的 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;

mysql数据库读写分离_mysql数据库的读写分离

3307数据库执行脚本

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

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

mysql数据库读写分离_mysql数据库的读写分离