0
点赞
收藏
分享

微信扫一扫

27. 蓝牙配对

目录

一 Mysql 在服务器中的部署方法

1.1 在Linux下部署mysql

1.1.1 安装依赖性:

1.1.2 下载并解压源码包

1.1.3 源码编译安装mysql

1.1.4 部署mysql

1.1.5 对另一台主机进行源码编译

二 mysql的组从复制

2.1 配置mastesr

2.2 配置salve

2.3 当有数据时添加slave2

2.4 延迟复制

2.5 慢查询日志

2.6 mysql的并行复制

2.7 原理刨析

2.8 架构缺陷

三 半同步模式

3.1半同步模式原理

3.2 gtid模式

3.3.启用半同步模式

3.4.测试

四 mysql高可用之组复制 (MGR)

4.1 组复制流程

4.2 组复制单主和多主模式

4.3.实现mysql组复制

五 mysql-router(mysql路由)

六 mysql高可用之MHA

6.1.MHA概述

6.2 MHA部署实施

6.2.1 搭建主两从架构

6.2.2安装MHA所需要的软件

6.2.3 配置MHA 的管理环境

6.2.4 MHA的故障切换

6.2.5 为MHA添加VIP功能


Mysql 在服务器中的部署方法

1.1 Linux下部署mysql

1.1.1 安装依赖性:

1.1.2 下载并解压源码包

1.1.3 源码编译安装mysql

注意:cmake出错后如果想重新检测,删除 mysql-5.7.44 CMakeCache.txt即可

1.1.4 部署mysql

测试:

1.1.5 对另一台主机进行源码编译

测试:

mysql的组从复制

2.1 配置mastesr

2.2 配置salve

测试:

注意:

2.3 当有数据时添加slave2

测试:

注意: 

2.4 延迟复制

测试:

2.5 慢查询日志

  • 慢查询,顾名思义,执行很慢的查询
  • 当执行SQL超过long_query_time参数设定的时间阈值(默认10s)时,就被认为是慢查询,这个
  • SQL语句就是需要优化的
  • 慢查询被记录在慢查询日志里
  • 慢查询日志默认是不开启的
  • 如果需要优化SQL语句,就可以开启这个功能,它可以让你很容易地知道哪些语句是需要优化的。

开启慢查询日志

测试慢查询

2.6 mysql的并行复制

查看 slave 中的线程信息

默认情况下 slave 中使用的是 sql 单线程回放

master 中时多用户读写,如果使用 sql 单线程回放那么会造成组从延迟严重

开启 MySQL 的多线程回放可以解决上述问题

此时 sql 线程转化为协调线程, 16 worker 负责处理 sql 协调线程发送过来的处理请求

2.7 原理刨析

三个线程

复制三步骤

具体操作

2.8 架构缺陷

三 半同步模式

3.1半同步模式原理

3.2 gtid模式

当激活 GITD 之后

master 出现问题后, slave2 master 的数据最接近,会被作为新的 master

slave1 指向新的 master ,但是他不会去检测新的 master pos id ,只需要继续读取自己 gtid_next 即可

设置gtid

3.3.启用半同步模式

master 端配置启用半同步模式

slave 端开启半同步功能

3.4.测试

master 端写入数据

模拟故障:

mysql高可用之组复制 (MGR)

4.1 组复制流程

注意:节点数量不能超过9台

4.2 组复制单主和多主模式

single-primary mode(单写或单主模式)

multi-primary mode(多写或多主模式)

4.3.实现mysql组复制

 注意:应该全部都是ONLINE,应为我一开始没有在每个虚拟机上手动做地址解析

为了避免出错,在所有节点中从新生成数据库数据

编辑主配置文件:

#在复制配置文件到myql-node2mysql-node3

注意:这里必须全部都是ONLINE才可以进行下面测试

测试:

在每个节点都可以完成读写

mysql-routermysql路由)

MySQL Router

Mysql route的部署方式

我们需要在所有的数据库主机之外再开一台主机 mysql-router

测试:

注意:mysql router 并不能限制数据库的读写,访问分流

mysql高可用之MHA

6.1.MHA概述

为什么要用MHA

什么是 MHA

MHA 的组成

MHA 的特点

故障切换备选主库的算法

MHA工作原理

6.2 MHA部署实施

6.2.1 搭建主两从架构

6.2.2安装MHA所需要的软件

在软件中包含的工具包介绍

1.Manager 工具包主要包括以下几个工具:

  • masterha_check_ssh         #检查MHASSH配置状况
  • masterha_check_repl         #检查MySQL复制状况
  • masterha_manger        #启动MHA
  • masterha_check_status        #检测当前MHA运行状态
  • masterha_master_monitor         #检测master是否宕机
  • masterha_master_switch         #控制故障转移(自动或者手动)
  • masterha_conf_host         #添加或删除配置的server信息

2.Node 工具包 (通常由masterHA 主机直接调用,无需人为执行)

  • save_binary_logs         #保存和复制master的二进制日志
  • apply_diff_relay_logs         #识别差异的中继日志事件并将其差异的事件应用于其他的slave
  • filter_mysqlbinlog         #去除不必要的ROLLBACK事件(MHA已不再使用这个工具)
  • purge_relay_logs         #清除中继日志(不会阻塞SQL线程)

6.2.3 配置MHA 的管理环境

1. 生成配置目录和配置文件

因为我们当前只有一套主从,所以我们只需要写一个配置文件即可

rpm 包中没有为我们准备配置文件的模板

可以解压源码包后在 samples 中找到配置文件的模板文件

2. 检测配置:

a )检测网络及 ssh 免密

b )检测数据主从复制情况

6.2.4 MHA的故障切换

MHA 的故障切换过程

共包括以下的步骤:

1. 配置文件检查阶段,这个阶段会检查整个集群配置文件配置

2. 宕机的 master 处理,这个阶段包括虚拟 ip 摘除操作,主机关机操作

3. 复制 dead master 和最新 slave 相差的 relay log ,并保存到 MHA Manger 具体的目录下

4. 识别含有最新更新的 slave

5. 应用从 master 保存的二进制日志事件( binlog events

6. 提升一个 slave 为新的 master 进行复制

7. 使其他的 slave 连接新的 master 进行复制

切换方式:

master 未出现故障手动切换

检测:

master 故障手动切换

恢复故障 mysql 节点

自动切换

恢复故障节点

清除锁文件

6.2.5 MHA添加VIP功能

模拟故障

恢复故障主机

手动切换后查看 vip 变化

举报

相关推荐

0 条评论