iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >怎么用KeepAlived搭建MySQL高可用环境
  • 194
分享到

怎么用KeepAlived搭建MySQL高可用环境

2024-04-02 19:04:59 194人浏览 独家记忆
摘要

本篇内容介绍了“怎么用KeepAlived搭建Mysql高可用环境”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有

本篇内容介绍了“怎么用KeepAlived搭建Mysql高可用环境”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

怎么用KeepAlived搭建MySQL高可用环境

使用KeepAlived搭建mysql的高可用环境。
首先搭建Mysql的主从复制
在Master开启binlog,创建复制帐号,
然后在Slave输入命令

  1. change master to

  2. master_host='192.168.1.70',

  3. master_port=3306,

  4. master_user='xx',

  5. master_passWord='xx';

然后使用start slave开启复制。

然后编译安装KeepAlived
进入keepalived-1.2.12目录
然后使用
./configure
make && make install

然后在Master服务器编辑KeepAlived的配置文件
vim /etc/keepalived/keepalived.conf

  1. ! Configuration File for keepalived


  2. global_defs {

  3.     router_id HA_MySQL

  4. }


  5. vrrp_instance VI_1 {

  6.         state BACKUP

  7.         interface eth0

  8.         virtual_router_id 51

  9.         priority 100

  10.         advert_int 1

  11.      nopreempt

  12.         authentication {

  13.                 auth_type PASS

  14.                 auth_pass 1111

  15.         }

  16.         virtual_ipaddress {

  17.          192.168.1.199

  18.         }

  19. }


  20. virtual_server 192.168.1.199 3306 {

  21.             delay_loop 2

  22.             lb_alGo wrr

  23.             lb_kind DR

  24.             persistence_timeout 60

  25.             protocol tcp

  26.             real_server 192.168.1.70 3306 {

  27.                 weight 3

  28.                 notify_down /root/shutdown.sh

  29.                 TCP_CHECK {

  30.                     connect_timeout 10

  31.                     nb_get_retry 3

  32.                     delay_before_retry 3

  33.                     connect_port 3306

  34.                 } 

  35.             }

  36. }

然后编辑Slave的配置文件
vim /etc/keepalived/keepalived.conf

  1. ! Configuration File for keepalived

  2. global_defs {

  3.      router_id HA_MySQL

  4. }


  5. vrrp_instance VI_1 {

  6.      state BACKUP

  7.      interface eth0

  8.      virtual_router_id 51

  9.      priority 90

  10.      advert_int 1

  11.      nopreempt

  12.      authentication {

  13.          auth_type PASS

  14.          auth_pass 1111

  15.      }

  16.      virtual_ipaddress {

  17.          192.168.1.199

  18.      }

  19. }


  20. virtual_server 192.168.1.199 3306 {

  21.      delay_loop 2

  22.      lb_algo wrr

  23.      lb_kind DR

  24.      persistence_timeout 60

  25.      protocol TCP

  26.      real_server 192.168.1.80 3306 {

  27.          weight 3

  28.          notify_down /root/shutdown.sh

  29.          TCP_CHECK {

  30.              connect_timeout 10

  31.              nb_get_retry 3

  32.              delay_before_retry 3

  33.              connect_port 3306

  34.          }

  35.      }

  36. }

其中
priority                      表示优先级
virtual_ipaddress      虚拟的IP地址(VIP)
delay_loop                每个2秒检查一次real_server状态
notify_down              检测到服务down后执行的脚本
connect_timeout      连接超时时间
nb_get_retry             重连次数
delay_before_retry   重连间隔时间
connect_port            健康检查端口

shutdown.sh 可以考虑加入邮件告警的功能。

  1. #!/bin/bash

  2. pkill keepalived


在两个服务器上启动MySQL和KeepAlived服务
service mysql start
service keepalived start

Master的server_id为1
Slave的server_id为2

然后 连接VIP的MySQL,可以看到已经连接到了Master服务器(server_id为1)

怎么用KeepAlived搭建MySQL高可用环境

如果kill掉Master的MySQL,KeepAlived会自动转移到Slave

在Master服务器上执行
killall mysqld

然后再次查看server_id,
短暂的失去连接之后,再次连接上VIP,server_id已经变为2,说明VIP已经指向了Slave

怎么用KeepAlived搭建MySQL高可用环境

nopreempt参数表示Master恢复正常之后,是否将VIP继续指向Master
这样的话,会再次引发切换。

两台服务器的KeepAlived会有心跳检测,
如果Master的MySQL服务挂了(3306端口挂了),那么他会选择自杀.
Slave的KeepAlived通过心跳检测发现这个情况,就会将VIP的请求接管。

KeepAlived还有很多参数没有明白是什么意思
生产环境的切换脚本,在Slave提升为Master之后,应该等待所有的中继日志应用完毕,否则可能丢失数据

参考:
Http://blog.csdn.net/wzy0623/article/details/38587839

“怎么用KeepAlived搭建MySQL高可用环境”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

您可能感兴趣的文档:

--结束END--

本文标题: 怎么用KeepAlived搭建MySQL高可用环境

本文链接: https://www.lsjlt.com/news/58744.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 怎么用KeepAlived搭建MySQL高可用环境
    本篇内容介绍了“怎么用KeepAlived搭建MySQL高可用环境”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有...
    99+
    2024-04-02
  • MySQL高可用Percona-XtraDB-Cluster环境的搭建
    本篇内容介绍了“MySQL高可用Percona-XtraDB-Cluster环境的搭建”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大...
    99+
    2024-04-02
  • 如何搭建Heartbeat+DRBD+Mysql+Lvs+Keepalived高可用
    这篇文章主要为大家展示了“如何搭建Heartbeat+DRBD+Mysql+Lvs+Keepalived高可用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何...
    99+
    2024-04-02
  • Ubuntu搭建Mysql+Keepalived高可用如何实现
    这篇文章将为大家详细讲解有关Ubuntu搭建Mysql+Keepalived高可用如何实现,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Mysql5.5双机热备实现方案安装两台Mysql安装Mysql5....
    99+
    2023-06-21
  • keepalived中怎么构建高可用MySQL-HA
    本篇文章给大家分享的是有关keepalived中怎么构建高可用MySQL-HA,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。环境拓扑如下MyS...
    99+
    2024-04-02
  • Centenos7.4下搭建mysql集群--mysql主主互备,keepalived高可用
    mysql + keepalived环境搭建 1.环境准备 系统:Centenos7.4 mysql版本 mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz keepal...
    99+
    2024-04-02
  • Ubuntu搭建Mysql+Keepalived高可用的实现(双主热备)
    Mysql5.5双机热备 实现方案 安装两台Mysql 安装Mysql5.5 sudo apt-get update apt-get install aptitud...
    99+
    2024-04-02
  • 怎么搭建Keepalived+Nginx+Tomcat高可用负载均衡架构
    这篇文章将为大家详细讲解有关怎么搭建Keepalived+Nginx+Tomcat高可用负载均衡架构,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Nginx的高可用负载均衡架构如下图:为典型的Tomcat...
    99+
    2023-06-02
  • 怎么搭建LVS+Keepalived+MySQL
    本篇内容主要讲解“怎么搭建LVS+Keepalived+MySQL”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么搭建LVS+Keepalived+MySQL...
    99+
    2024-04-02
  • mysql+keepalived 双主热备高可用
    理论介绍: 我们通常说的双机热备是指两台机器都在运行,但并不是两台机器都同时在提供服务。当提供服务的一台出现故障的时候,另外一台会马上自动接管并且提供服务,而且切换的时间非常短。MySQL双主复制,即互...
    99+
    2024-04-02
  • centos环境下nginx高可用集群的搭建指南
    目录1.概述2.CentOS中nginx集群搭建2.1 集群架构图2.2 Keepalived2.3 集群搭建准备2.4 集群搭建2.4.1 安装keepalived2.4.2 配置...
    99+
    2024-04-02
  • mysql怎么搭建环境变量
    mysql搭建环境变量的方法:复制C盘中MySQL安装目录下MySQL.exe程序的安装路径。依次打开“我的电脑" → 系统属性 → 高级系统设置 → “高级”选项卡 → 打开“环境变量”设置对话框。在对话框的系统环境变量中,找到...
    99+
    2024-04-02
  • keepalived对nginx进行高可用搭建及原理详解
    目录一、Keepalived介绍二、Keepalived的应用场景三、Keepalived的工作原理1 VRRP协议2 核心组件3 分层工作4 工作状态四、Keepalived使用1...
    99+
    2024-04-02
  • 怎么用idea搭建ssm环境
    要使用IDEA搭建SSM环境,可以按照以下步骤进行操作:1. 下载并安装Java JDK:确保你的电脑已经安装了Java JDK,并...
    99+
    2023-10-10
    idea
  • 使用WAMP5搭建Apache+MySQL+PHP环境
    搭建Apache+MySQL+PHP环境使用WAMP5非常简单,以下是步骤:1. 下载WAMP5软件:前往WAMP5官方网站(htt...
    99+
    2023-08-23
    mysql
  • 【Linux环境搭建】用云服务器搭建Linux环境
    目录 1. 我们为什么要学Linux 2. 云服务器购买 3. 远程连接云服务器 4. 如何创建新用户   5. 第一个Linux程序 总结: 写在最后: 1. 我们为什么要学Linux 作为一个程序员,你必须学好Linux,至于为什么...
    99+
    2023-09-04
    linux
  • 怎么使用docker搭建fastdfs环境
    本篇内容主要讲解“怎么使用docker搭建fastdfs环境”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用docker搭建fastdfs环境”吧!docker镜像的选择也挺重要的,我最开...
    99+
    2023-07-02
  • 怎么搭建Python环境
    本篇文章为大家展示了怎么搭建Python环境,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1 安装 Python1.1 Mac 系统Mac 系统默认是安装了 Python2.7 的。我们如何另外安装...
    99+
    2023-06-17
  • 怎么搭建Angular2环境
    小编给大家分享一下怎么搭建Angular2环境,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!01、安装Node.js 和 npm...
    99+
    2024-04-02
  • 怎么搭建Maven环境
    这篇文章给大家分享的是有关怎么搭建Maven环境的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。安装前先配置好电脑的相关环境变量。一、配置maven的环境下载地址:http://maven.apache.org/d...
    99+
    2023-05-30
    maven
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作