| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> 【linux环境】MySQL主从复制配置原理与详解 -> 正文阅读 |
|
[系统运维]【linux环境】MySQL主从复制配置原理与详解 |
前言MySQL主从复制实战。以前总听说集群之类的,从来没有好好思考过。如今有空余时间,终于亲自搭建环境得以实现MySQL主从复制。 从搭建虚拟机环境,以及安装Redhat系列的centos7.5服务器,部署MySQL5.6环境。嘿嘿,测试使用虚拟机搭建美滋滋。当然你也可以花money,多建几台云服务器实现集群环境。 正文MySQL主从复制实战 主要使用到的环境说明数据库版本
操作系统
测试环境:VMware12虚拟机搭建三台centos7.3服务器
搭建服务器环境参考文章:VMware12配合使用Centos7搭建Linux开发环境 测试模型:一主两从,即(master、slave、slave) 一、binlog与relay-log1.1 binlog作用:记录数据库改变的数据,在第四步可以进行验证。 查看binlog日志
mysqlbinlog查看binlog日志
1.2 relay-log作用:连接master与slave节点的核心
1.3 参考文章(理论知识详解)第一篇对binlog与relay-log讲解很透彻(个人理解) 二、master节点配置2.1 master节点配置MySQL数据库配置文件my.cnf
加入配置
2.2 重启mysql
2.3 通过命令查看主节点状态
注意查看:master_log_pos的值,这点很重要,master与搭建集群的两个slave节点保持一致。 2.4 授权slave节点账号关联授权搭建的两个slave子节点
刷新权限
2.5 查看验证显示查看日志
显示查看服务
三、slave节点配置3.1 slave节点配置MySQL数据库配置文件my.cnf
3.2 登录mysql设置
输入命令如下
3.3 开启中继日志
3.4 辅助操作查看slave子节点状态
启动slave节点
关闭slave节点
3.5 slave02(从节点配置)修改MySQL从节点配置文件
查看slave子节点状态
启动slave节点
四、创建表以及新增数据进行验证4.1 创建数据库用户建议使用SQLyog工具创建用户,比较方便。 链接: https://pan.baidu.com/s/11gIlZKxoTG5BCCcoXdVJRg 提取码: ntu7 4.2 创建表
4.3 生成测试数据
4.4 采用SQLylog工具验证master节点插入测试数据 master节点binlog日志验证 132_slave_insert_data_girl同步数据 133_slave_check_RELAYLOG日志 133_slave_同步数据 五、排查问题5.1 error 1236master_log_pos与从节点不一致导致error 1236 slave节点正常状态参考 注意:我截图上的是后期优化处理过的,所以看到的pos和上面的不一致 5.2 解决问题通过如下设置保持与master节点一致
查看master节点日志偏移量
在slave节点修改日志偏移量与master一致
最后启动slave节点
六、实现MySQL主从复制6.1 分析模型分析模型:一主一从,一主多从,多主一从 6.1.1 一主一从模型:master->slave6.1.2 一主多从在slave节点再配置slave缓解master服务器压力 6.1.3 多主一从6.1.4 特例:主-主复制(每一个主既是从又是主) 6.1.5 使用SQLylog操作验证分别登陆三台数据库服务器(推荐SQLylog工具)
数据库:test_db //与master节点配置单一用户对应
master节点创建GIRL表,slave同步创建
master节点创建GIRL表,slave同步创建 tips:如果想实现主-主同步,则需要在其它两台配置数据库用户关联授权,参考第二步。 七、附件(搭建环境)7.1 虚拟机搭建环境搭建服务器环境参考文章:VMware12配合使用Centos7搭建Linux开发环境 7.1.1 搭建虚拟机环境 7.1.2 虚拟机服务器配置 7.2 xshell远程连接7.2.1 使用xshell远程连接 7.3 搭建linux环境准备三台MySQL服务器配置主从复制(master:131,slave:132,slave:133) 131 master主节点my.cnf配置 131 验证master节点log_bin开启 131 show_master_status查看状态(注意:此时master的pos为120) 131查看主节点master的server服务(131服务器) 131查看主节点binlog日志所在目录(131服务器) start_slave启动从节点132(此时master的pos为120,没对应上导致slave无法读取) 参考步骤五排查问题进行解决
查看此时master的pos为120 此时设置master_log_pos=120
正常slave节点读取_IO_SQL_Running为YES,如下图 slave_mysql_log(132服务器对应的slave节点) 启动从节点slave(对应slave节点133服务器)
slave节点MySQL日志(slave节点对应133服务器) 132开启从节点中继日志 7.4 采用SQLylog工具进行测试131_master_插入测试数据 131_master_binlog_日志验证 132_slave_insert_data_girl同步数据 133_slave_check_RELAYLOG日志 133_slave_同步数据 持续更新优化中… 开心一刻
开心一刻,乐呵乐呵。创作乐无边,学而思有境。你会发现,自己的知识宝库越来越丰富。好了,到此为止就是此篇文章的全部内容了,能看到这里的都是帅哥靓妹啊!!!善于总结,其乐不穷。好记性不如烂笔头,多收集自己第一次尝试的成果,收获也颇丰。你会发现,自己的知识宝库越来越丰富。白嫖有瘾,原创不易。 by 龙腾万里sky 原创不易,白嫖有瘾 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/16 4:40:11- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |