麒麟v10 上部署 TiDB v5.1.2 生产环境优化实践
459
2023-07-06
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登录后复制
重启 master:
systemctl restart mysql登录后复制登录后复制
在 master 中创建用于主从同步的用户:
mysql> # 创建用户mysql> CREATE USER 'hugh'@'%' IDENTIFIED WITH mysql_native_password BY '123456';mysql> # 授权用户mysql> GRANT REPLICATION SLAVE ON *.* TO 'hugh'@'%';mysql> # 刷新权限mysql> FLUSH PRIVILEGES;登录后复制
查看主服务器状态:
show master status;登录后复制
记录下 File 和 Position 的值,之后要用到。
2.2 Slave 上的操作
修改slave 的配置( my.cnf)加入下面的内容:
[mysqld] # id 必须唯一!!! server-id=2登录后复制
重启 slave:
systemctl restart mysql登录后复制登录后复制
登录 MySQL 并运行以下命令,设置主节点参数:
mysql> CHANGE MASTER TOMASTER_HOST='master的IP地址',MASTER_USER='hugh',MASTER_PASSWORD='123456',MASTER_LOG_FILE='binlog.000006',MASTER_LOG_POS=856;登录后复制
最后两行就是我们记录下的 File 和 Position 的值。
查看主从同步的状态:
mysql> show slave status\G;登录后复制
检查下面的信息,都为 yes 才代表搭建成功:
Slave_IO_Running: YesSlave_SQL_Running: Yes登录后复制
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。