MySQL基于binlog的主从同步

主库配置

1.配置文件,在最后添加一行:server_id=1

复制代码
[root@openEuler-node1 my.cnf.d]# vim mysql-server.cnf 
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log-error=/var/log/mysql/mysqld.log
pid-file=/run/mysqld/mysqld.pid
server_id=1

2.重启服务

复制代码
[root@openEuler-node1 my.cnf.d]# systemctl restart mysqld

3.授权用户:

创建用户并赋予权限

复制代码
mysql> create user rep@'192.168.%.%' identified with mysql_native_password by '123456';
mysql> grant replication slave on *.* to rep@'192.168.%.%';

4.查看当前主数据库的状态信息

复制代码
mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000002 |     1230 |              |                  |                   |
+---------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

从库配置:

1.配置文件:在最后一行添加server_id=2

复制代码
[root@openEuler-node2 ~]# vim /etc/my.cnf.d/mysql-server.cnf 
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log-error=/var/log/mysql/mysqld.log
pid-file=/run/mysqld/mysqld.pid
server_id=2

2.重启服务

复制代码
[root@openEuler-node2 ~]# systemctl restart mysqld

3.进入mysql 根据主库填写

复制代码
mysql> change master to
    -> master_host='192.168.136.55',
    -> master_user='rep',
    -> master_password='123456',
    -> master_log_file='binlog.000002',
    -> master_log_pos=1230,

4.开启slave 并查看Slave_IO_Running和Slave_SQL_Running是否是yes

复制代码
mysql> start slave;
Query OK, 0 rows affected, 1 warning (0.01 sec)

mysql> show slave status \G
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes

注意如果不是yes 注意报错信息

相关推荐
努力努力再努力wz12 分钟前
【C++进阶系列】:万字详解智能指针(附模拟实现的源码)
java·linux·c语言·开发语言·数据结构·c++·python
QMCY_jason22 分钟前
ubuntu 24.04 FFmpeg编译 带Nvidia 加速记录
linux·ubuntu·ffmpeg
matlab的学徒35 分钟前
Kubernetes(K8S)全面解析:核心概念、架构与实践指南
linux·容器·架构·kubernetes
忧郁的蛋~1 小时前
EFcore查询a表中符合b表列的值
数据库
Fcy6481 小时前
初识Linux和Linux基础指令详细解析及shell的运行原理
linux·服务器·ubuntu·centos
xwz小王子1 小时前
ManipulationNet:开启真实世界机器人操作基准测试新时代
数据库·机器人
gb42152871 小时前
linux系统中如何在root用户中将某个文件夹目录的权限赋值给其它用户(主要说的是 方法 1)
linux
咯哦哦哦哦1 小时前
关于QT 打印中文 乱码问题
java·数据库·qt
qq_339554822 小时前
linux串口驱动学习
linux
野犬寒鸦2 小时前
从零起步学习Redis || 第十二章:Redis Cluster集群如何解决Redis单机模式的性能瓶颈及高可用分布式部署方案详解
java·数据库·redis·后端·缓存