iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >MySQL MHA应用实践(方案实战)
  • 510
分享到

MySQL MHA应用实践(方案实战)

2024-04-02 19:04:59 510人浏览 泡泡鱼
摘要

1、环境与条件已存在主从架构环境 主机名 IP地址 主从角色 MHA角色 leo1 192.168.3.2 Master MHA-node leo2 192.168.3.3 slave M

1、环境与条件
已存在主从架构环境

主机名 IP地址 主从角色 MHA角色
leo1 192.168.3.2 Master MHA-node
leo2 192.168.3.3 slave MHA-node
leo3 192.168.3.4 slave MHA-node,MHA-manager
vip 192.168.3.6

主从确保主从状态正常

Mysql>show slave status\G;
iosql进程为YES

参数更改

relay_log_purge = 0                 #不自动删除relay log 以便于宕机修复数据
log_bin = /data/log/leo-bin      #从库开启binlog  以便于宕机修复数据
expire_logs_days=7
log-slave-updates=1

2、配置ssh
MHA在运行是会通过SSH服务连接到其他节点服务器进行检测或复制数据,因此需要集群内可免密码登陆。
在leo1-3内分别执行如下命令:

    ssh-keygen -t rsa
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.3.2
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.3.3
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.3.4

3、安装MHA Node
对所有mysql节点安装MHA Node

        1)安装perl语言
         yum install perl-DBD-MySQL  -y   ###因为MHA用perl 开发
         2)安装MHA Node
         rpm -ivh mha4mysql-node-0.56-0.el6.noarch.rpm
     下载地址
         https://code.Google.com/arcHive/p/mysql-master-ha/downloads
         3)创建命令软连接方便使用:
         ls -s /app/mysql/bin/mysqlbinlog /usr/bin/mysqlbinlog
         ls -s /app/mysql/bin/mysql  /usr/bin/mysql
         4)检查MHA账户
         grant all privileges on *.* to mha@'192.168.3%'  identified by 'mha';
         select user,host from mysql.user;

4、MHA-Manager
Manager 可以安装在任何一台机器上。

    1)使用epel源安装perl环境
        wget -O /etc/yum.repo.d/epel.repo  Http://mirrors.aliyum.com/repo/eprl-6.repo
    2)安装管理节点以来包
        yum intall -u perl-Config-Tiny* epel-release perl-Log-Dispatch* perl-Parallel* per-Time*
    3)安装MHA-Node
            rpm -ivh mha4mysql-node-0.56-0.el6.noarch.rpm
    4)安装MHA-Manger
        rpm -ivh mha4mysql-manager-0.56-0.el6.noarch.rpm

5、配置MHA管理节点

        mkdir -p /etc/mha
        mkdir -p /var/log/mha/app1
        vi /etc/mha/app1.cnf
        [server default]
        manager_log=/var/log/mha/app1/manager.log   
        manager_workdir=/var/log/mha/app1.log
        mater_binlog_dir=/app/mysql/data   ##MHA保存主库binlog路径
        user=mha                                          ##mysql 数据库授权yonghu
        passWord=mha
        ping_interval=2                                ##监控ping包时间间隔
        repl_user=rep                                  ##主从复制用户
        repl_password=leo123
        ssh_user=root
        repot_script=/usr/local/send_report      ##故障发生后触发脚本
        secondary_check_script=/usr/local/bin/masterha_secondary_check -s leo3 -s leo2 --user=root --master_host=leo1 --master_ip=192.168.3.2 --master_port=3306
        ########manager 联系不上leo1时会通过leo2、leo3 查看leo1的状态
        shutdown_script=""
        [server1]
        hostname=192.168.3.2
        port=3306
        [server2]
        hostname=192.168.3.4
        port=3306
        candidate_master=1             ##设定此参数后server2 会将优先升为主库
        check_repl_delay=0              ##MHA忽律主从复制延迟
        [server3]
        hostname=192.168.3.3
        port=3306

6、启动及测试

1)检测ssh免密登陆
    master_check_ssh -conf=/etc/mha/app1.cnf
2)检测主从复制状态
    master_check_repl -conf=/etc/mha/app1.cnf
3)启动MHA
    nohup master_manager --conf=/etc/mha/app1.cnf --remove_dead_master_conf --ignore_last_failver < /dev/null > /var/log/mha/app1/manager.log 2>&1 &
    ##remove_dead_master_conf 在配置文件中删除master信息
    ##ignore_last_failver  忽律上一次故障切换

7、配置VIP漂移

   1)利用keepalived
    2)在配置文件中填入以下参数
    master_ip_failover_script=/usr/local/bin/master_ip_failover
    3)在脚本中加入以下参数
    my = $vip= '192.168.3.6';
    my $key=  0
    my $ssh_start_vip = "/sbin/ifconfig eth0:$key $vip";
    my $ssh_stop_vip = "/sbin/ifconfig eth0:$key down";

    chmod +x /etc/mha/master_ip_failover
您可能感兴趣的文档:

--结束END--

本文标题: MySQL MHA应用实践(方案实战)

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

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

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

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

下载Word文档
猜你喜欢
  • MySQL MHA应用实践(基础知识)
    一、MHA概述MHA(Mater High Availability)是一套非常流行和实用的MySQL高可用解决方案软件,保证MySQL主从复制集群中主库的高可用性,保证集群业务不受影响。当master异常...
    99+
    2024-04-02
  • Golang应用实践:实战经验与案例分享
    Golang应用实践:实战经验与案例分享 近年来,作为一门快速发展且备受关注的编程语言,Golang在各个领域的应用越来越广泛。其简洁高效的设计让开发者能够快速地构建稳健的应用程序,同...
    99+
    2024-03-05
    golang 实践经验 案例分享 go语言 golang开发 标准库
  • MySQL高可用之MHA架构企业实战
    📢📢📢📣📣📣 哈喽!大家好,我是【IT邦德】,江湖人称jeames007,10年DBA工作经验 一位上进心十足的【大数据领域博主】!😜😜😜 中国DBA联盟(ACDU)成员,目前从事DBA及程序编程 擅长主流数据Oracle、MySQL、...
    99+
    2023-08-17
    mysql 架构 数据库 MHA
  • MySQL高可用方案MHA怎么用
    这篇文章主要为大家展示了“MySQL高可用方案MHA怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“MySQL高可用方案MHA怎么用”这篇文章吧。 MyS...
    99+
    2024-04-02
  • MYSQL实战-MHA搭建及问题总结
    ##################MHA部署#################### 1.服务器  192.168.56.21 mydb1   #Master &nbs...
    99+
    2024-04-02
  • MySQL数据库实现高可用架构之MHA的实战
    目录一、MySQLMHA介绍1.1什么是MHA1.2MHA的组成1.3MHA的特点二、MySQLMHA搭建1.MHA架构部分2.故障模拟部分3.实验环境三、实验步骤1、关闭防火墙和S...
    99+
    2024-04-02
  • Android 应用进程保活方案实战
    前台服务:将应用运行的服务设置为前台服务,让用户知道应用正在后台运行,系统会给予一定的优先级,减少被系统杀掉的概率。但是需要注意,使用前台服务保活不能大量占用用户的通知栏,否则用户可能会感到烦躁而卸载应用。 JobScheduler:A...
    99+
    2023-08-31
    android java 开发语言
  • Mysql实现MHA高可用
    环境: CentOS7.4 x 4 mha4mysql-manager x 1 mha4mysql-node x 3 node节点搭建一主双从 mha4mysql代码托管:https://co...
    99+
    2024-04-02
  • ZooKeeper开发实际应用案例实战
    目录项目背景介绍面临问题如何解决代码讲解数据服务器检索服务器总结附:完整代码数据服务端代码检索服务端代码ZooKeeper入门教程一简介与核心概念 ZooKeeper入门教程二在单机...
    99+
    2024-04-02
  • MySQL高可用方案MHA如何部署
    这篇文章将为大家详细讲解有关MySQL高可用方案MHA如何部署,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。MHA(Master High Availability)是一...
    99+
    2024-04-02
  • MySQL中Consul+MHA使用方案是怎样的
    MySQL中Consul+MHA使用方案是怎样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。一、解决问题解决mysql数据库主库单点问题...
    99+
    2024-04-02
  • 企业中MySQL主流高可用架构实战三部曲之MHA
    老张最近两天有些忙,一些老铁一直问,啥时更新博文,我可能做不到天天更新啊,但保证以后一有空就写一些干货知识分享给大家。我们如果想要做好技术这项工作,一定要做到理论与实践先结合。我一个曾经被数据库虐得体无完肤...
    99+
    2024-04-02
  • MySQL 锁的原理与应用实践
    MySQL 锁的原理与应用实践摘要:MySQL 是一种常用的关系型数据库管理系统,它具有强大的并发处理能力。在多用户同时访问数据库时,为了确保数据的一致性和完整性,MySQL 使用锁机制来控制对共享资源的访问。本文将介绍 MySQL 锁的原...
    99+
    2023-12-21
    MySQL 应用实践
  • MySQL MGR+ Consul之数据库高可用方案最佳实践
    MySQL MGR+ Consul之数据库高可用方案最佳实践 背景说明:     基于目前存在很多MySQL数据库单点故障,传统的MHA,PXC等方案用VIP或者DNS切...
    99+
    2024-04-02
  • 使用Vue+MySQL实现登录注册的实战案例
    目录1.新建vue项目并连接数据库2.新建登录页面、注册页面和首页3.页面路由配置4.新建/server/API/login.js5.在/server/router.js中配置对应路...
    99+
    2024-04-02
  • MHA实现MySQL高可用集群架构
    转转连接 https://www.cnblogs.com/tanxiaojun/p/10424699.html MHA简介 MHA(Master HighAvailability)目前在MySQL高可...
    99+
    2024-04-02
  • CSS框架实践分享:现实应用案例深度探索
    实战经验分享:探索CSS框架的实际应用案例 在现代网页开发中,CSS框架成为了不可或缺的工具。它们帮助我们快速构建具有吸引力和响应式设计的网页,并提供了丰富的样式和组件库。然而,只有在实际应用中才能真正感受到它们的力量。本文将分...
    99+
    2024-01-16
    实战经验 应用案例 CSS框架
  • 一次mysql迁移的方案与踩坑实战记录
    目录背景 方案一:老数据备份 方案二:分表 方案三:迁移至tidb 重点说下同步老数据遇到的坑 最终同步脚本方案 总结背景 由于历史业务数据采用mysql来存储的,其中有一张操作记...
    99+
    2024-04-02
  • MySQL高可用方案MHA在线切换的步骤及原理
    在日常工作中,会碰到如下的场景,如mysql数据库升级,主服务器硬件升级等,这个时候就需要将写操作切换到另外一台服务器上,那么如何进行在线切换呢?同时,要求切换过程短,对业务的影响比较小。 MHA...
    99+
    2024-04-02
  • MySQL数据库优化的方案与实践是怎样的
    这篇文章给大家介绍MySQL数据库优化的方案与实践是怎样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。最近一段时间,我们整理了一些关于Percona,Linux,Flashcache...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作