windows实现mysql读写分离[通俗易懂]

2022-08-01 10:50:30 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。一、主服务器(master)配置

1、修改MySQL配置文件my.ini

[mysqld]

log-bin=mysql-bin #开启主从复制,主库的配置 log-bin-index=mysql-bin.index server-id=1 #指定主库serverid,主库的id要比从库的id小 sync_binlog=1 binlog_format=mixed binlog-do-db=test #指定同步的数据库,如果不指定则同步全部数据库 binlog-ignore-db=mysql #指定不同步的数据库 binlog-ignore-db=performance_schema binlog-ignore-db=information_schema

配置完成后重启MySQL服务。

2、授权给从服务器(slave)同步数据的账号密码

GRANT REPLICATION SLAVE ON *.*TO ‘zhanghao’@’192.168.174.131’ IDENTIFIED BY ‘123456’;

参数说明:

注意:授权给slave的账号不能是root,root只可以本地登录,因此,我此处给出的是zhanghao;另外防火墙需要关闭,或者对外开放3306端口,否则后期会失败

zhanghao:slave连接master使用的账号 IDENTIFIED BY ‘123456’ :slave连接master使用的密码 192.168.174.130:slave IP 执行命令:show master statusG 这个命令不需要分号

注意结果中的File和Position,配置从服务器(slave)时会用到。

二、从服务器(slave)配置

注意:当program Files文件夹中的mysql文件夹里找不到my.ini,只能找到my_default.ini时,可以去c盘的programData中找mysql,在它下面可以找到my.ini

1、修改MySQL配置文件my.ini

[mysqld]

server-id=2 log-bin=mysql-bin relay-log-index=slave-relay-bin.index relay-log=slave-relay-bin sync_master_info=1 sync_relay_log=1 sync_relay_log_info=1

2、设置连接主服务器(master)的信息

先执行关闭命令 : stop slave;

然后执行

change master to master_host=’192.168.174.130′,master_user=’zhanghao’,master_port=3306,master_password=’123456′,master_log_file=’mysql-bin.000008′,master_log_pos=170;

参数说明:

master_host:master IP master_user:master数据库通过GRANT授权的账号 master_port:master数据库使用的端口号 master_password:master数据库通过GRANT授权的密码 master_log_file:master数据库中通过show master status/G显示的File名称 master_log_pos:master数据库中通过show master status/G显示的Position数据,注意不带引号 重启MySql服务。

执行命令:start slave;

执行命令:show slave statusG

当Slave_IO_Running与Slave_SQL_Running都为Yes时才算配置成功。

此时,master服务器上test数据库里的数据就能同步到slave服务器上的test数据库中。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/126694.html原文链接:https://javaforall.cn

0 人点赞