windows10系统中实现mysql主从复制(一主多从)

主从复制应用场景

MySQL 主从复制集群功能使得 MySQL 数据库支持大规模高并发读写成为可能,同时有效地保护了物理服务器宕机场景的数据备份。

1、从服务器作为主服务器的实时数据备份。

2、主从服务器实现读写分离,从服务器实现负载均衡。

3、把多个从服务器根据业务重要性进行拆分访问。

主从复制实战(一主多从)

这里准备三台主机,没有条件,可以用虚拟机代替

主服务器:192.168.1.235

从服务器1:192.168.127.129

从服务器2:192.168.127.130

主机之间相互能ping的通,在三台主机上面安装各自mysql,我这里用的是5.7版本

主服务器配置:

找到mysql配置文件,可以在【服务】里面找到mysql配置文件的位置

 打开配置文件,在【mysqld】节点下添加

#唯一,要与从机的不同
server-id = 1
# Binary Logging.
#开启二进制日志
log-bin= mysql-bin  

注意server-id要唯一。

命令行登录mysql,mysql -uroot -proot

1、分别给两个从服务器创建用户:

CREATE USER '使用名'@'备机IP地址' IDENTIFIED BY '密码';#创建用户

2、分别给两个从服务器用户赋权

GRANT REPLICATION SLAVE ON *.* TO '使用名'@'备机IP地址';#分配权限

3、刷新权限

flush privileges

4、重启mysql,登录mysql,输入show master status;

5、为防止position一直变动,此时我们给主服务器加上只读锁

flush table with read lock;

从服务器配置:

这里只配置一个,另一个也是一样的配置

1、同主服务器一样,在mysql配置文件中,加入

#唯一,要与主机或其他从机的不同
server-id = 2
# Binary Logging.
#开启二进制日志
log-bin= mysql-bin  

2、重启mysql服务器,登录mysql服务器,mysql -uroot -proot


CHANGE MASTER TO 
 MASTER_HOST='192.168.1.235', #主机的IP
       MASTER_USER='slave1', #之前创建的那个使用名
       MASTER_PASSWORD='slave1', #密码
       MASTER_LOG_FILE='mysql-bin.000007', #这是主库中show master status;File下的那个值
       MASTER_LOG_POS=154;#这是主库Position下的那个值

开启slave同步进程

start slave;

查看slave状态

show slave status\G

当Slave_IO_Running和Slave_SQL_Running都yes时,主从复制创建成功。

主服务器给表解锁:unlock tables

在主服务器创建数据库:

库名:123,建表:test,插入数据

从服务器1:192.168.1.129

从服务器2:192.168.1.130

到此,mysql一主多从已经搭建完毕

常见错误:

1、出现Slave_IO_Running:No:https://www.jb51.net/article/27220.htm

2、出现Slave_SQL_Runing:No:https://blog.csdn.net/heng_ji/article/details/51013710

3、当主服务器中有个库从服务器从来没有,如果主服务器操作之后,从服务器就会存在一个或多个事务需要手动去跳过

slave stop;
SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1        #跳过一个事务
slave start

不然就会在之后的同步过程中会同步失败,想要通过配置,自动跳过这些错误的事务,在mysql的配置文件【mysqld】节点中加入

slave-skip-errors=all

 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值