Mysql 8主从复制配置图解
Posted ShenLiang2025
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql 8主从复制配置图解相关的知识,希望对你有一定的参考价值。
mysql 8主从复制配置图解
声明
本文的数据来自网络,部分代码也有所参照,这里做了注释和延伸,旨在技术交流,如有冒犯之处请联系博主及时处理。本文主要介绍mysql的主从的配置。
注:1 当前主服务器的操作系统是Win7、IP为192.168.0.100、数据库版本是Mysql 8.0.23、端口号3309。
2 当前从服务器的操作系统是CentOS 8、IP为192.168.111.128、数据库版本是Mysql 8.0.23、端口号3306。
准备
有两个版本一致(一样)的mysql数据库,可以是不同的操作系统环境,当前主服务是windows,从服务是linux。
配置主从
主服务创建同步的用户
-- 主服务上创建用于主从的用户
create user 'sync'@'%' IDENTIFIED WITH mysql_native_password BY 'sync1234';
主服务赋予复制权限
-- 赋予复制和访问从服务的权限
GRANT REPLICATION SLAVE ON *.* to 'sync'@'%';
主服务修改配置文件
[mysqld]下配置如下
[mysqld]
....
# mysqld下新增如下两个参数
#启用二进制日志
log-bin=mysql-bin
#服务器唯一ID
server-id=111
从服务修改配置文件
[mysqld]下配置如下
[mysqld]
....
# mysqld下新增如下两个参数
#启用二进制日志
log-bin=mysql-bin
#服务器唯一ID
server-id=222
重启主从数据库
Step 1 主数据库Windows的重启服务,服务里右键重启服务。
Step 2 从数据库Linux的重启服务:
#重启mysql服务
service mysqld restart
查看主服务状态
-- 查看主服务的状态
show master status\\G;
配置从服务
--从服务器里配置访问主服务
change master to master_host='192.168.0.100',master_user='sync',master_password='sync1234',master_port=3309,master_log_file='mysql-bin.000001',master_log_pos=5068;
注:1 这里加了master_port参数主要是针对主服务不是标准端口3306的情况。
2 master_log_file、master_log_pos参数的值来自主服务的show master status。
启动从服务
-- 启动从服务器
start slave;
查看从服务状态
-- 查看从服务器状态
show slave status \\G
注:这里Slave_IO_Running 和Slave_SQL_Running都得是Yes才行。
验证
主数据库修改
-- 主数据服务器里创建新数据库、表并插入数据
create database shen;
create table test_shen(id int);
insert into test_shen values(111);
select * from test_shen;
从数据库查验
-- 从服务器里查看主数据库新建的数据库和表以及插入的数据。
show databases;
use shen;
select * from test_shen;
以上是关于Mysql 8主从复制配置图解的主要内容,如果未能解决你的问题,请参考以下文章