角色 | ip |
---|---|
master | 192.168.233.100 |
slave1 | 192.168.233.101 |
slave2 | 192.168.233.102 |
禁用 selinux 跟 firewal l情况下:
① 修改 master 配置文件
vim /etc/my.cnf
log_bin = /var/lib/mysql/new_bin # 修改binlog存放地址
expire_logs_days = 7 # 修改binlog删除天数
max_binlog_size = 100M # 修改binlog文件大小
server-id = 1 # 表示服务器标识id号,master和slave主机的server-id不能一样
binlog-do-db = testdb1 #表示需要复制的数据库
# binlog-ignore-db 表示不需要复制的数据库
systemctl restart mysqld # 修改完重启服务
新路径已修改为 /var/lib/mysql/new_bin
master 节点信息
② 新建同步账号
在 master 节点新建同步账号
mysql> create user 'tongbu'@'192.%' identified by '12345678';
Query OK, 0 rows affected (0.00 sec)
mysql> grant replication slave on *.* to 'tongbu'@'192.%';
Query OK, 0 rows affected (0.00 sec)
③ 创建数据库
在 master 与 slave 节点创建数据库
create database ma_db;
④ 修改 slave 配置文件
vim /etc/my.cnf
server-id = 2
expire_logs_days = 7
max_binlog_size = 100M
systemctl restart mysqld # 修改完重启服务
⑤ 配置主从关系
在 slave1 节点配置
change master to
master_host='192.168.233.100', --表示实现复制的主机的IP地址
master_user='tongbu', --表示实现复制的登录远程主机的用户
master_password='12345678', -- 表示实现复制的登录远程主机的密码
master_log_file='new_bin.000001', --表示实现复制的binlog日志文件,填master的file
master_log_pos=120 --表示实现复制的binlog日志文件的偏移量,填master的Position
;
show slave status \G; --查看 slave1 情况
发现错误:Last_IO_Error: Fatal error: The slave I/O thread stops because master and slave have equal MySQL server UUIDs; these UUIDs must be different for replication to work.
原因:从服务器是复制主的,导致id相同
修改 /var/lib/mysql/auto.cnf 使主从不一样即可,重启服务文章来源:https://www.toymoban.com/news/detail-469652.html
⑥ 检验主从结果
文章来源地址https://www.toymoban.com/news/detail-469652.html
到了这里,关于mysql 主从同步的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!