网上关于mysql 主从复制的文章很多,因为系统不同或 mysql 版本不同,看着总是发怵,必须找到官方文档,并且照着操作才放心!
文档其实写的很详细,但是,总有一种跳来跳去的感觉,来回看了几遍,才捋出来思路,其实就是很简单的几个步骤
先学习这个
17.1.2 设置基于二进制日志文件位置的复制
我的环境
主服务器
Ubuntu 20.04 :
192.1568.0.101
$ mysql -V
mysql Ver 8.0.32 for Linux on x86_64 (MySQL Community Server - GPL)
从服务器
Ubuntu 20.04 :
192.168.0.103
$ mysql -V
mysql Ver 8.0.32 for Linux on x86_64 (MySQL Community Server - GPL)
2 个服务器上的mysql 都是直接使用 apt 安装后,都是缺省配置
以下假设所有密码都是 Password@123
操作步骤
抄录一下官方文档实现步骤
17.1.2.1 设置复制源配置
17.1.2.2 设置副本配置
17.1.2.3 为复制创建用户
17.1.2.4 获取复制源二进制日志坐标
17.1.2.5 选择数据快照的方法
17.1.2.6 设置副本
17.1.2.7 在副本上设置源配置
最后一步
17.1.2.8 将副本添加到复制环境
暂时不用管他,后续再学习!
完全按照以上步骤,一步一步的进行
-
17.1.2.1 设置复制源配置
要将源配置为使用基于二进制日志文件位置的复制,您必须确保启用二进制日志记录,并建立唯一的服务器 ID
动态修改 server_id ,重启之后会丢失
SET GLOBAL server_id = 101;
静态修改 server_id
my.cnf 只是简单的 include ,实际的配置在 /etc/mysql/mysql.conf.d$ cd /etc/mysql/mysql.conf.d
$ cat mysqld.cnf... [mysqld] pid-file = /var/run/mysqld/mysqld.pid socket = /var/run/mysqld/mysqld.sock datadir = /var/lib/mysql log-error = /var/log/mysql/error.log # add by wzh 20230413 server-id=101
重启 mysql 生效
$ sudo systemctl res