LINUX上实现mysql主从复制(读写分离)

原理简介:

利用日志功能,将主服务器所进行的操作通过日志让从服务器去进行模仿完成主从复制

具体实现:

主服务器ip addr:192.168.217.132

从服务器ip :192.168.217.131

1.修改主服务器my.cnf文件(从服务器也要在这个文件加这三行代码,server_id要和主服务的server_id不同)

增加红色箭头的这三行代码,这三行代码位置要加在scoket=var/lib/mysql/mysql.sock下面

server_id 是唯一的,用来标识。log-bin=mysql-bin表示开启日志服务,do_db=test表示共享数据库为test

完成后 :wq 

保存退出

2.重启mysql服务

service mysql restart;

我的机器这一步会出错,然后会提示我用下面这句

/bin/systemctl restart mysqld.service

3.在主服务器为从服务器分配账号,用于共享主服务器的日志文件

登录root用户

mysql -uroot -p

然后

GRANT SELECT on *.* TO reader@'%' IDENTFIED BY '123456';

然后在主服务器

show master status;

4.在从服务器进入mysql

然后输入

stop slave;

开始配置

change master to master_host='192.168.217.132', master_user='slave', master_password='123456', master_log_file='mysql-bin.000017', master_log_pos=120;

其中

 master_log_file='mysql-bin.000017', master_log_pos=120;

中''中的具体值要替换为其中的具体值(如下图)

然后

start slave;

再次开启slave同步

然后在从服务器

8.验证结果

通过navicat远程连接mysql,然后在主服务器的数据库创建数据库test,尝试对数据库test进行操作

如果从服务器也会有相应操作,恭喜你,你完成了一次主从服务器的配置。

 

防火墙端口记得开放

 firewall-cmd?--zone=public? --add-port=3306/tcp?--permanent?

 

 firewall-cmd --zone=public --add-port=3306/tcp --permanent
 firewall-cmd --zone=public --add-port=1000-2000/tcp --permanent

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值