23.1、mysql高可用业务需求:

23.2、mysql高可用架构图(单主热备模式):

23.6、部署drbd、heartbeat、mysql的主从同步:

1、部署heartbeat:参考"21、部署herartbeat"文档;

2、部署drbd:参考"22、部署drbd"文档;

3、heartbeat和drbd整合:参考"22.17、heartbeat和drbd整合"文档;

3、部署mysql同步:参考"14、mysql主从复制实战"、"3、mysql的多实例配置"文档;

23.7、配置细节说明:

停止主和从的heartbeat和drbd服务;

1、heartbeat:

(1)修改maste-db和slave-db的/etc/ha.d/haresource配置文件:

(2)master-db IPaddr::172.16.1.26/24/eth1 drbddisk::data Filesystem::/dev/drbd0::/master-db::ext4 mysql

2、drbd:

(1)启动master-db和slave-db上的drbd服务;

(2)使用'drbdadm primary data'将master-db端的drdb服务置主;

(3)手动挂载master-db端的'/dev/drbd0'设备到'/master-db/'目录上;

3、mysql:

(1)在master-db和slave-db相同的路径下安装mysql软件;

(2)master-db端在/master-db/目录下面初始化mysql并指定data目录为/master-db/,为mysql创建登录密码,启动mysql测试;

此时在master-db的操作都同步到了slave-db端的/dev/drbd0管理的/dev/sdb1系统分区下面;slave-db端只要保证有/master-db/目录即可;

[root@master-db ~]#tree /master-db/

/master-db/

├── 3306

│   ├── my.cnf

│   └── mysql

│ └── data

└── lost+found

2 directories, 3 files

(3)在master-db端和slave-db端将mysql脚本拷贝到/etc/ha.d/resource.d/目录下面,方便heartbeat管理mysql,要加执行的权限;

(4)为了方便测试在slave-db端安装端口为3307的mysql多实例进行测;

23.8、测试:

停止master-db和slave-db上的mysql、heartbeat、drbd服务;

1、启动顺序:

(1)master-db:

1)drbdadm up data

2)/etc/init.d/heartbeat start

(2)slave-db:

1)drbdadm up data

2)/etc/init.d/heartbeat start

3)/data/3307/mysql start

2、结果:

(1)master-db:

1)df -h

Filesystem Size Used Avail Use% Mounted on

/dev/drbd0 4.5G 1.4G 2.9G 33% /master-db

2)cat /proc/drbd

0: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r-----

ns:12 nr:0 dw:4 dr:817 al:1 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0

3)ip addr

3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000

link/ether 00:0c:29:5c:f0:d0 brd ff:ff:ff:ff:ff:ff

inet 172.16.1.16/24 brd 172.16.1.255 scope global eth1

inet 172.16.1.26/24 brd 172.16.1.255 scope global secondary eth1

inet6 fe80::20c:29ff:fe5c:f0d0/64 scope link

valid_lft forever preferred_lft forever

4)ss -tunlp | grep 3306

tcp LISTEN 0 600 *:3306 *:* user

(2)slave-db:

1)ip addr、df -h、ss -tunlp | grep 3306无结果:

2)cat /proc/drbd

0: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r-----

ns:12 nr:0 dw:4 dr:817 al:1 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0

3)查看3307主从同步结果:

show slave status\G;

3、master-db和slave-db进行切换:

(1)在master-db上执行'/usr/share/heartbeat/hb_standy'命令将资源交给slave-db端,

此时结果和上面的结果想法;此时会发现slave-db端的3307 mysql实例在show slave status\G;状态时

会出现正在尝试连接主端,等待60s就可以了,在等待的60s期间由于vip已经漂移到了salve-db端,磁盘

已经挂载(drbd此端为主,对端为从),mysql启动,所以用户还是可以往数据库中写数据的;

(2)在主端执行'/usr/share/heartbeat/hb_takeover local'master-db从slave-db接管回资源;

4、关闭顺序:

(1)slave-db:

/data/3307/mysql stop

/etc/init.d/heartbeat stop

drbdadm down data

(2)master-db:

/etc/init.d/heartbeat stop

drbdadm down data

23、mysql高可用实践的更多相关文章

  1. (5.15)mysql高可用系列——MHA实践

    关键词:MHA,mysql mha [1]需求 采用mysql技术,实现MHA高可用主从环境,预计未来数据量几百G MHA概念参考:MYSQL高可用技术概述 [2]环境技术架构 [2.1]MHA简介 ...

  2. MySQL高可用方案MHA自动Failover与手动Failover的实践及原理

    集群信息 角色                             IP地址                 ServerID      类型 Master                     ...

  3. MySQL高可用复制管理工具 —— Orchestrator使用

    背景 在上一篇「MySQL高可用复制管理工具 —— Orchestrator介绍」中大致介绍了Orchestrator的功能.配置和部署,当然最详细的说明可以查阅官方文档.本文开始对Orchestra ...

  4. MySQL高可用之MHA的搭建 转

     http://www.cnblogs.com/muhu/p/4045780.html http://www.cnblogs.com/gomysql/p/3675429.html http://www ...

  5. mysql高可用方案MHA介绍

    mysql高可用方案MHA介绍 概述 MHA是一位日本MySQL大牛用Perl写的一套MySQL故障切换方案,来保证数据库系统的高可用.在宕机的时间内(通常10-30秒内),完成故障切换,部署MHA, ...

  6. Heartbeat+DRBD+MySQL高可用方案【转】

    转自Heartbeat+DRBD+MySQL高可用方案 - yayun - 博客园 http://www.cnblogs.com/gomysql/p/3674030.html 1.方案简介 本方案采用 ...

  7. MySQL高可用方案MHA的部署和原理

    MHA(Master High Availability)是一套相对成熟的MySQL高可用方案,能做到在0~30s内自动完成数据库的故障切换操作,在master服务器不宕机的情况下,基本能保证数据的一 ...

  8. MySQL高可用之MHA的搭建

    MySQL MHA架构介绍: MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于Face ...

  9. mysql高可用架构之MHA,haproxy实现读写分离详解

    MySQL高可用架构之MHA 一.运维人员需要掌握的MySQL技术: 1.基本SQL语句 2.基本的管理[库表数据的管理    权限的管理] 3.容灾       保证数据不丢失. 二.工作中MySQ ...

随机推荐

  1. GB 18030-2000《信息技术信息交换用汉字编码字符集基本集的扩充

    中文编码:GB2312编码.GBK编码.GB18030编码 2016-09-01 0 By ADMIN 一.GB 2312编码 中华人民共和国国家标准简体中文字符集,全称<信息交换用汉字编码字符 ...

  2. Redis 快速集群环境搭建

    环境 Linux :centos 7 redis:redis-5.0.9 Redis 集群环境搭建步骤 早期 redis 版本集群环境搭建需要安装 ruby 运行环境,搭建步骤比较繁琐: redis ...

  3. mysql数据库-日志管理

    MySQL 支持丰富的日志类型 事务日志:transaction log 事务日志的写入类型为"追加",因此其操作为"顺序IO":通常也被称为:预写式日志 wr ...

  4. 【Web前端HTML5&CSS3】11-定位

    笔记来源:尚硅谷Web前端HTML5&CSS3初学者零基础入门全套完整版 目录 定位的简介 1. 相对定位 偏移量(offset) 相对定位的特点 2. 绝对定位 绝对定位的特点 包含块(co ...

  5. .NET Worker Service 添加 Serilog 日志记录

    前面我们了解了 .NET Worker Service 的入门知识[1] 和 如何优雅退出 Worker Service [2],今天我们接着介绍一下如何为 Worker Service 添加 Ser ...

  6. 游刃于私有网络与公共网络之间的NAT

    网络地址转化技术NAT 1. 应用场景 2. NAT 2.1 静态NAT 2.2 动态NAT 2.3 NAPT 2.4 EASY IP 3. NAT配置 3.1 静态NAT 3.2 动态NAT 3.3 ...

  7. Linux - last 命令

    前言 为啥写这篇?因为听 grep.sed 教程的时候有这个命令 栗子 加上工作中,运维给我排查问题的时候也用到了,感觉挺重要,先了解为敬! 命令作用 显示上次登录用户的列表 这个是在 Linux 下 ...

  8. Docker学习(8) Docker的CS模式

    Docker的CS模式 链接方式   socket

  9. 循环IRNNv2Layer实现

    循环IRNNv2Layer实现 IRNNv2Layer实现循环层,例如循环神经网络(RNN),门控循环单元(GRU)和长期短期记忆(LSTM).支持的类型为RNN,GRU和LSTM.它执行循环操作,该 ...

  10. Yolov3&Yolov4网络结构与源码分析

    Yolov3&Yolov4网络结构与源码分析 从2018年Yolov3年提出的两年后,在原作者声名放弃更新Yolo算法后,俄罗斯的Alexey大神扛起了Yolov4的大旗. 文章目录 1. 论 ...