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

一、主服务器(master)配置1、修改MySQL配置文件my.ini[mysqld]log-bin=mysql-bin#开启主从复制,主库的配置log-bin-index=mysql-bin.indexserver-id=1#指定主库serverid,主库的id要比从库的id小sync_binlog=1binlog_format=mixed

大家好,又见面了,我是你们的朋友全栈君。一、主服务器(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 status\G    

这个命令不需要分号

注意结果中的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 status\G

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

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

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

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

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • JDK1.8新特性CompletableFuture总结

    CompletableFuture这个completableFuture是JDK1.8版本新引入的类。下面是这个类。实现了俩接口。本身是个class。这个是Future的实现类。使用completionStage接口去支持完成时触发的函数和操作。一个completetableFuture就代表了一个任务。他能用Future的方法。还能做一些之前说的executorService配合fu…

    2022年4月4日
  • Spark Streaming Join

    Spark Streaming Join多数据源Join思路多数据源Join大致有以下三种思路:数据源端Join,如Android/IOS客户端在上报用户行为数据时就获取并带上用户基础信息。计算引擎上Join,如用SparkStreaming、Flink做Join。结果端Join,如用HBase/ES做Join,Join键做Rowkey/_id,各字段分别写入列簇、列或field。三种思路各有优劣,使用时注意…

    2022年6月30日
  • vim命令大全(最全)

    此文为转载学习链接:vim命令大全http://blog.csdn.net/scaleqiao/article/details/45153379vim命令小技巧http://www.codeceo.com/article/useful-vim-command.html1.关于Vimvim是我最喜欢的编辑器,也是linux下第二强大的编辑器。虽然emacs是公认的世界第一,我认为使…

    2022年4月10日
  • QT QStringList 用法

    QT QStringList 用法QTQStringList用法

    2022年6月3日
  • MySQL删除表数据 MySQL清空表命令 3种方法

    MySQL删除表数据 MySQL清空表命令 3种方法一、MySQL清空表数据命令:truncateSQL语法:truncatetable表名注意:不能与where一起使用。 truncate删除数据后是不可以rollback的。 truncate删除数据后会重置Identity(标识列、自增字段),相当于自增列会被置为初始值,又重新从1开始记录,而不是接着原来的ID数。 truncate删除数据后不写服务器log,整体删除速度快。 truncate删除数据后不激活trigger(触发器)。二、MySQL删除表命令:

    2022年6月4日
  • access数据库表的创建_access数据库sql语句大全

    access数据库表的创建_access数据库sql语句大全在Access中使用sql语句创建表时指定字段类型长度为255的文本varchar长度为20的文本varchar(20)日期时间datetime数字byte或smallint或integer,或bit自动编号:counter(1,1)外健:constraint外健名主键:primarykey小数:numeric单精度:real双精度:float备注:m

    2022年10月9日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号