首先请大家先打开我上一篇文章 主从备份 完成Mysql的基本环境(安装Mysql 即可)
注意点:如果是连着我前面完成的步骤来做这个实验的话 请在从服务器里面执行 这条命令 STOP SLAVE IO_THREAD
1、配置Mysql
#打开Mysql 配置文件
vim /etc/my.cnf.d/mysql-server.cnf
# 添加以下命令到 主服务器 配置文件
server-id=24
replicate-do-db=study # 操作的数据库
binlog-ignore-db=mysql # 排除其他的数据库
binlog-ignore-db=information_schema # 排除其他的数据库
auto-increment-increment=2 # 防止主键冲突,表数据主键从1开始,每次增长2的倍数
auto-increment-offset=1
# 添加以下命令到 从服务器 配置文件
server-id=23
replicate-do-db=study
binlog-ignore-db=mysql
binlog-ignore-db=information_schema
auto-increment-increment=2
auto-increment-offset=2
重启Mysql 生效配置 两台服务器都需要执行
systemctl restart mysqld.service
2、配置主主Mysql
在两台服务器都创建一个用户
GRANT REPLICATION SLAVE ON *.* to '用户名'@'%' identified by '密码'; #一般不用root帐号 随意账号 给从服务器对应
### 注意 Mysql 8.0 直接输入这行命令可能会报错
### 解决办法 输入以下命令创建
create user '用户名'@'%' identified WITH mysql_native_password by '密码'; # (创建用户)
GRANT REPLICATION SLAVE ON *.* to '用户名'@'%' ; # (用户授权)
flush privileges; #刷新
3、设置主主模式
查看另外一台服务器的状态
show master status
# 执行以下命令 为另外一台授权
change master to
master_user='用户名',
master_password='密码',
master_host='另外一台服务器ip地址',
master_log_file='mysql-bin.000004', # 记得修改为你们自己的
master_log_pos=2056; # 记得修改为你们自己的
# 开启互为主从
start slave
注意:以上命令 另外一台服务器 也跟着操作一遍
4、测试
随便一台服务器 创建一个数据库 (注意点 这里要和之前配置文件中配置的 数据库保持一致)
create database study;
另外一台服务器执行查看命令
show databases;
看到study数据库之后 就算主主模式 配置成功!