MySql主从复制

主从复制原理

MySQL的主从复制是MySQL本身自带的一个功能,不需要额外的第三方软件就可以实现,其复制功能并不是copy文件来实现的,而是借助binlog日志文件里面的SQL命令实现的主从复制,可以理解为我再Master端执行了一条SQL命令,那么在Salve端同样会执行一遍,从而达到主从复制的效果。

从库生成两个线程,一个I/O线程,一个SQL线程;i/o线程去请求主库 的binlog,并将得到的binlog日志写到relay log(中继日志) 文件中;

主库会生成一个 log dump 线程,用来给从库 i/o线程传binlog;SQL 线程,会读取relay log文件中的日志,并解析成具体操作,来实现主从的操作一致,而最终数据一致;

主数据库配置

1:编辑mysql配置文件:vim /etc/my.cnf

###数据库id,=号后面自己写个id号
server_id=104
###开启mysql的binlog
log-bin=mysql-bin

2:重启mysql服务:service mysqld restart    或者   /etc/init.d/mysql restart

3:验证my.cnf的server_id是否配置成功

  • SHOW VARIABLES LIKE '%server_id%';

  • SHOW MASTER STATUS;

从数据库配置

1:编辑mysql配置文件:vim /etc/my.cnf

###数据库id,=号后面自己写个id号
server_id=130
###开启mysql的binlog
log-bin=mysql-bin
###指定需要同步主服务器的哪个数据库?
binlog_do_db=zjns

2:重启mysql服务:service mysqld restart    或者   /etc/init.d/mysql restart

3:验证my.cnf的server_id是否配置成功

  • SHOW VARIABLES LIKE '%server_id%';

  • SHOW MASTER STATUS;

开始同步(在从数据库中执行)

1:在从数据库中执行语句,从数据库同步主数据库配置

change master to master_host='主数据库服务器IP地址', master_port=主数据库端口, master_user='主数据库服务器登录账号', master_password='主数据库服务器登录密码',
master_log_file='主数据库服务器二进制执行文件名称', master_log_pos=主数据库服务器二进制执行文件从第几行开始同步;


change master to master_host='***.***.***.***', master_port=3306, master_user='***', master_password='***',
master_log_file='***', master_log_pos=***;

2:开启同步

  • start slave;     -- 开启同步
  • stop slave;     -- 停止同步

3:查看同步状态

  • show slave status;

* 如果未同步成功,使用 show slave status 命令查看错误信息

* 问题修改完成后,重新查询

验证mysql主从复制

向主数据库中执行一条写操作的语句,查看从数据库中是否存在或者更改

附主从配置,非必须

sync_binlog=1
gtid_mode=on
enforce_gtid_consistency=1
log_slave_updates
binlog_format=row
relay_log=/usr/local/mysql/data/relay.log
relay_log_recovery=1
binlog_gtid_simple_recovery=1 
auto_increment_increment=2
auto_increment_offset=1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

7 号

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值