运维开发网

构建MySQL主从同步实现操作

运维开发网 https://www.qedev.com 2022-08-09 21:17 出处:网络
这篇文章主要介绍了MySQL?中的主从同步实现操作,文章围绕如何搭建主从同步详细展开内容,需要的小伙伴可以参考一下,希望对你有所帮助

这篇文章主要介绍了MySQL?中的主从同步实现操作,文章围绕如何搭建主从同步详细展开内容,需要的小伙伴可以参考一下,希望对你有所帮助


一、MySQL 8.0 主从同步

主从同步过程(原理):

master 将变动记录到二进制日志文件(binary log)中,即配置文件中 log-bin 指定的文件,这些记录叫做二进制日志事件(binary log events);master 将二进制日志文件发送给 slave;slave 通过 I/O 线程读取文件中的内容写到 relay 日志中;slave 执行 relay 日志中的事件,完成数据在本地的存储。

建立主从系统的注意事项:

主从服务器操作系统版本和位数一致;Master 和 Slave 数据库版本要一致;Master 和 Slave 数据库中的数据要一致;Master 开启二进制日志, Master 和 Slave 的 server_id 在局域网内必须唯一。


二、MySQL主从搭建


2.1 Master 上的操作

修改master (my.cnf)的配置以添加以下内容:

[mysqld] log-bin=mysql-bin # id 必须唯一!!! server-id=1

主重启:

systemctl restart mysql

在主服务器中为主从同步创建一个用户:

mysqlgt; # 创建用户mysqlgt; CREATE USER 'hugh'@'%' IDENTIFIED WITH mysql_native_password BY '123456';mysqlgt; # 授权用户mysqlgt; GRANT REPLICATION SLAVE ON *.* TO 'hugh'@'%';mysqlgt; # 刷新权限mysqlgt; FLUSH PRIVILEGES;

查看主服务器状态:

show master status;

记录文件和位置的值,以备后用。


2.2 Slave 上的操作

修改从属设备的配置(my.cnf)以添加以下内容:

[mysqld] # id 必须唯一!!! server-id=2

重新启动从属服务器:

systemctl restart mysql

登录MySQL并运行以下命令来设置主节点参数:

mysqlgt; CHANGE MASTER TOMASTER_HOST='master的IP地址',MASTER_USER='hugh',MASTER_PASSWORD='123456',MASTER_LOG_FILE='binlog.000006',MASTER_LOG_POS=856;

最后两行是我们记录的文件和位置的值。

查看主从同步的状态:

mysqlgt; show slave status\G;

检查以下信息,所有信息均为“是”,表示施工成功:

Slave_IO_Running: YesSlave_SQL_Running: Yes

关于MySQL中主从同步实现的这篇文章到此为止。关于MySQL中主从同步的更多信息

0

精彩评论

暂无评论...
验证码 换一张
取 消