- mysql 主从复制
- 主从复制理论
- 主从配置环境
- 主从复制参数
- 主从复制配置
1.0 主从复制理论
1.1 什么是主从复制
1 | // 主从复制: |
1.2 MySQL 复制作用、应用场景等
1 | // MySQL 复制能干什么: |
1.3 MySQL 四种同步方式
1 | // MySQL 有四种同步方式: |
2.0 主从配置环境
- 主从架构: 一主两从、主库用于生产、从库用于数据容灾和主库备机
主机IP | 角色 | 端口 | 版本 | 最小配置 | 系统版本 |
---|---|---|---|---|---|
10.10.10.150 | master | 3306 | mysql 5.7.40 | 1C/1G/100G | centos 7.9 |
10.10.10.151 | slave | 3306 | mysql 5.7.40 | 1C/1G/100G | |
10.10.10.152 | slave | 3306 | mysql 5.7.40 | 1C/1G/100G |
3.0 主从复制参数
1 | // MySQL 主从复制常用配置参数 |
1 | // 关于 binglog 二进制日志参数 |
1 | // 关于 relay_log 中继日志参数 |
1 | // 关于同步方式的参数(不加下面参数默认就是异步同步) |
1 | // 关于 GTID 参数 |
4.0 主从复制配置
4.1 MySQL 安装和目录准备
- 以下配置3台服务器均操作
4.1.1 MySQL 安装
1 | # mkdir -p /mysql/{app,data/3306,log/3306} |
4.1.2 目录准备
1 | // 准备主从二进制与中继日志目录; 3台服务器全部配置 |
4.1.3 Systemd 启停文件
1 | # cat /usr/lib/systemd/system/mysqld.service |
4.1.4 hosts 配置
1 | # cat /etc/hosts |
4.2 MySQL 主配置文件
4.2.1 主库配置
1 | # cat /mysql/data/3306/my.cnf |
4.2.2 slave1 从库配置
1 | # cat /mysql/data/3306/my.cnf |
4.2.3 slave2 从库配置
1 | # cat /mysql/data/3306/my.cnf |
4.2.4 初始化 MySQL
- 3台 MySQL 均操作
1 | # ln -sf /mysql/data/3306/my.cnf /etc/my.cnf |
4.2.5 创建复制用户并授权
- 3台 MySQL 均操作
1 | mysql> create user 'synuser'@'10.10.10.%' identified with mysql_native_password by 'ink8s.com'; |
4.2.6 slave 与 master 建立连接
- 2台 slave 做相同操作
1 | mysql> stop slave; |
4.2.7 SQL 线程报错解决
1 | // SQL线程报错: mysql_native_password |
- 本文作者: [email protected]
- 本文链接: https://www.ink8s.com/2023/03/28/mysql-主从复制/
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!