Mysql主从复制+动静分离(1)

相关链接:

mysql5.7安装:Mysql安装_luo_guibin的博客-CSDN博客

mysql常用命令:Mysql常用命令行大全 - 蓦然回首恍然如梦 - 博客园

一、实验效果

实现两台服务器主从复制

二、准备工作

两台虚拟机,10.0.0.10(主),10.0.0.100(从),且安装mysql,我以mysql5.47为例子(不会安装可以看我前面的博客),两者都创建了一个名为msb的数据库。

...mysql

create database msb;

三、实例配置

1、更改主服务器my.cnf配置文件

...shell

vi /etc/my.cnf

#在mysqld模块中添加如下配置信息

log-bin=master-bin #二进制文件名称

binlog-format=ROW  #二进制日志格式,有row、statement、mixed三种格式,row指的是把改变的内容复制过去,而不是把命令在从服务器上执行一遍,statement指的是在主服务器上执行的SQL语句,在从服务器上执行同样的语句。MySQL默认采用基于语句的复制,效率比较高。mixed指的是默认采用基于语句的复制,一旦发现基于语句的无法精确的复制时,就会采用基于行的复制。

server-id=1            #要求各个服务器的id必须不一样

binlog-do-db=msb   #同步的数据库名称

2、更改从服务器登录主服务器的账号授权

...sql(授权操作)
set global validate_password_policy=0;  #密码策略为0
set global validate_password_length=1;  #密码长度为1
grant replication slave on *.* to 'root'@'%' identified by 'rootroot';
flush privileges;   #刷新权限

3、更改从服务器my.cnf配置文件

...shell

vi /etc/my.cnf

 #在mysqld模块中添加如下配置信息
log-bin=master-bin    #二进制文件的名称,名称可以自行更改,但需要跟后面change语句一致。
binlog-format=ROW    #二进制文件的格式
server-id=2            #服务器的id

4、重启主服务器的mysqld服务

...shell
#重启mysql服务
service mysqld restart
#登录mysql数据库
mysql -uroot -p
#查看master的状态
show master status;

5、重启从服务器并进行相关配置

#重启mysql服务
service mysqld restart
#登录mysql
mysql -uroot -p
#连接主服务器
change master to master_host='192.168.150.11',master_user='root',master_password='123456',master_port=3306,master_log_file='master-bin.000001',master_log_pos=334;
#启动slave
start slave
#查看slave的状态
show slave status\G(注意没有分号)

四、实现效果

 如果其中一个显示connecting,需要关闭主服务器的防火墙,从服务器stop slave,重新连接主服务器,start slave(或者reset master)即可,show slave status\G再次查看就可以了。

如果还是不行,需要查看日志,/var/log/mysqld.log日志文件。

五、效果测试

我在主服务上对数据库msb进行修改,从服务器会自动更新修改内容,相反,从服务器修改数据库msb,数据只会保存在从服务器,主数据库不受影响。

在主服务器上msb数据库里创建一个名为user的表。

 从服务器下直接查看即可。

 

 说明主从复制搭建成功!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值