mysql的主从同步

402 阅读1分钟

前言

部署主从同步前请先分别部署好两个mysql服务,部署请参考我的这篇文章:

juejin.cn/post/684490…

环境

  • Linux版本
[root@localhost tmp]# uname -a 
Linux localhost 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:39:32 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux 

实战部署

1、在主库中新建主从同步的用户

mysql> grant replication slave on *.* to repluser@'%' identified by 'Ynbwjf_67234g!'

mysql> flush privileges;

2、修改my.cnf配置文件

[root@iZ8vb41szgujuks2h52947Z ~]# vim /etc/my.cnf

server-id不能相同

  • 修改主库server-id为
server-id  = 1739
  • 修改从库server-id为
server-id  = 2739

设置主库Binlog过期时间

expire_logs_days = 7

设置主库binlog模式为:

binlog_format = ROW

设置主库binlog规则路径:

log-bin = /usr/local/mysql/arch/mysql-bin

3、在主库查看从库从主库的哪个点开始同步数据:

mysql> show master status
+------------------+----------+--------------+------------------+-------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000003 |      593 |              |                  |                   |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

4、配置从库去获取主库的数据:

mysql>
change master to
master_host='172.26.87.115',
master_port=3306,
master_user='repluser',
master_password='**************',
master_log_file='mysql-bin.000004',
master_log_pos=154;

5、从库启用同步:

mysql> start slave;

6、查看从库同步状态:

mysql> show slave status\G;

监控这两个指标是否正常

Slave_IO_Running: Yes
Slave_SQL_Running: Yes

结束,自己去测试是否能实现主从同步,拜拜了您