热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

mysql+heartbeat+DRBD+LVS实现mysql高可用<二>

上一节,讲述了DRBD的安装,因为要利用heartbeat+DRBD+mysql实现mysql的高可用,所以这一节讲述安装mysql和heartbeat的安装分别在各个节点安装my

   上一节,讲述了DRBD的安装,因为要利用heartbeat+DRBD+mysql实现mysql的高可用,所以这一节讲述安装mysql和heartbeat的安装


   分别在各个节点安装mysql,文本使用的是二进制的安装包mysql-5.5.33-linux2.6-x86_64.tar.gz

[root@drbd1 usr]# cd /data/tools/
[root@drbd1 tools]# ls
mysql-5.5.33-linux2.6-x86_64.tar.gz
[root@drbd1 tools]# tar xf mysql-5.5.33-linux2.6-x86_64.tar.gz
[root@drbd1 tools]# mv mysql-5.5.33-linux2.6-x86_64 /usr/local/mysql
[root@drbd1 tools]# cd /usr/local/mysql/
[root@drbd1 mysql]# useradd mysql
[root@drbd1 mysql]# cp support-files/my-large.cnf /etc/my.cnf
[root@drbd1 mysql]# cp support-files/mysql.server /etc/init.d/mysql

   注:在主节点建立数据存放路径  

[root@drbd1 mysql]# mkdir /database/mysql
[root@drbd1 mysql]# chown -R mysql:mysql /database/mysql

   分别在各个节点编译mysql的配置文件my.cnf中的datadir=/database/mysql

bubuko.com,布布扣

在主节点上初始化mysql,使其数据库目录生成数据(备节点是不需要的)

bubuko.com,布布扣

这是整个实验环境最重要的一步,我们运行mysql是在DRBD之后,即这时已经将/dev/drbd0挂载在/database目录,而并非未挂载启动mysql,所以不需要启动mysql,它可以靠脚本来启动,如果已经启动了mysql,请手动关闭



   安装heartbeat

   安装heartbeat,centos系统默认并没有heartbeat类似的HA的yum源

   centos没有提供heartbeat的yum源,

   wget  ftp://mirror.switch.ch/pool/1/mirror/scientificlinux/6rolling/x86_64/os/Packages/epel-release-6-5.noarch.rpm

   

rpm -ivh epel-release-6-5.noarch.rpm
yum update
yum list all | grep heartbeat
yum -y install heartbeat*
rpm -qa heartbeat
[root@drbd1 tools]# rpm -qa heartbeat
heartbeat-3.0.4-2.el6.x86_64

   创建heartbeat的配置文件

   

ha.cf是heartbeat的主配置文件
[root@drbd1 tools]# cp /usr/share/doc/heartbeat-3.0.4/ha.cf /etc/ha.d/
haresource资源信息定义文件
[root@drbd1 tools]# cp /usr/share/doc/heartbeat-3.0.4/haresources /etc/ha.d/
heartbeat心跳检测使用的认证文件,权限为600
[root@drbd1 tools]# cp /usr/share/doc/heartbeat-3.0.4/authkeys /etc/ha.d/
[root@drbd1 tools]# chmod 600 /etc/ha.d/authkeys

   按照当前的情况修改ha.cf文件

logfile /var/log/ha-log 日志文件位置
keepalive 2 心态哦发送时间间隔
deadtime 30 备用节点30秒没有检测到心跳信息,确认对方故障
warntime 10 警告次数
initdead 120 守护进程启动30s后,启动服务资源
ucast eth0 192.168.253.140 另一台主机的ip地址
auto_failback on 当主节点恢复正常时,是否进行切回操作
node drbd1
node drbd2 两个节点名称

   authkey配置文件实例

   

auth 1
#1 crc
#2 sha1 HI!
#3 md5 Hello!
1 sha1 magedu.com

   资源说明文件

   [root@drbd1 tools]# vim  /etc/ha.d/haresources

bubuko.com,布布扣

   192.168.253.10 是vip

   主机名称  drbddisk(是一个管理drbd的脚本,heartbeat默认提供脚本)::web(启动资源) Filesystem::/dev/drbd0::/database 表示把drbd设备挂载到/database分区上

   在drbd1上设置完成后,把主节点的ha.cf、authkeys、heartsource复制一份到另一台主机drbd2,注意修改ha.cf中的另一台主机地址

本文出自 “linux” 博客,请务必保留此出处http://weihong.blog.51cto.com/6655355/1382184

mysql+heartbeat+DRBD+LVS实现mysql高可用<二>,布布扣,bubuko.com


推荐阅读
  • MySQL的查询执行流程涉及多个关键组件,包括连接器、查询缓存、分析器和优化器。在服务层,连接器负责建立与客户端的连接,查询缓存用于存储和检索常用查询结果,以提高性能。分析器则解析SQL语句,生成语法树,而优化器负责选择最优的查询执行计划。这一流程确保了MySQL能够高效地处理各种复杂的查询请求。 ... [详细]
  • 自动验证时页面显示问题的解决方法
    在使用自动验证功能时,页面未能正确显示错误信息。通过使用 `dump($info->getError())` 可以帮助诊断和解决问题。 ... [详细]
  • 网站访问全流程解析
    本文详细介绍了从用户在浏览器中输入一个域名(如www.yy.com)到页面完全展示的整个过程,包括DNS解析、TCP连接、请求响应等多个步骤。 ... [详细]
  • Framework7:构建跨平台移动应用的高效框架
    Framework7 是一个开源免费的框架,适用于开发混合移动应用(原生与HTML混合)或iOS&Android风格的Web应用。此外,它还可以作为原型开发工具,帮助开发者快速创建应用原型。 ... [详细]
  • 本文介绍了如何使用 CMD 批处理脚本进行文件操作,包括将指定目录下的 PHP 文件重命名为 HTML 文件,并将这些文件复制到另一个目录。 ... [详细]
  • 解决Bootstrap DataTable Ajax请求重复问题
    在最近的一个项目中,我们使用了JQuery DataTable进行数据展示,虽然使用起来非常方便,但在测试过程中发现了一个问题:当查询条件改变时,有时查询结果的数据不正确。通过FireBug调试发现,点击搜索按钮时,会发送两次Ajax请求,一次是原条件的请求,一次是新条件的请求。 ... [详细]
  • 本文详细介绍了DMA控制器如何通过映射表处理来自外设的请求,包括映射表的设计和实现方法。 ... [详细]
  • 解决Win10下MySQL连接问题:Navicat 2003无法连接到本地MySQL服务器(10061)
    本文介绍如何在Windows 10环境下解决Navicat 2003无法连接到本地MySQL服务器的问题,包括启动MySQL服务和检查配置文件的方法。 ... [详细]
  • Spark中使用map或flatMap将DataSet[A]转换为DataSet[B]时Schema变为Binary的问题及解决方案
    本文探讨了在使用Spark的map或flatMap算子将一个数据集转换为另一个数据集时,遇到的Schema变为Binary的问题,并提供了详细的解决方案。 ... [详细]
  • 解决Parallels Desktop错误15265的方法
    本文详细介绍了在使用Parallels Desktop时遇到错误15265的多种解决方案,包括检查网络连接、关闭代理服务器和修改主机文件等步骤。 ... [详细]
  • 解决 Windows Server 2016 网络连接问题
    本文详细介绍了如何解决 Windows Server 2016 在使用无线网络 (WLAN) 和有线网络 (以太网) 时遇到的连接问题。包括添加必要的功能和安装正确的驱动程序。 ... [详细]
  • 在使用Eclipse进行调试时,如果遇到未解析的断点(unresolved breakpoint)并显示“未加载符号表,请使用‘file’命令加载目标文件以进行调试”的错误提示,这通常是因为调试器未能正确加载符号表。解决此问题的方法是通过GDB的`file`命令手动加载目标文件,以便调试器能够识别和解析断点。具体操作为在GDB命令行中输入 `(gdb) file `。这一步骤确保了调试环境能够正确访问和解析程序中的符号信息,从而实现有效的调试。 ... [详细]
  • [c++基础]STL
    cppfig15_10.cppincludeincludeusingnamespacestd;templatevoidprintVector(constvector&integer ... [详细]
  • 在 LeetCode 的“有效回文串 II”问题中,给定一个非空字符串 `s`,允许删除最多一个字符。本篇深入解析了如何判断删除一个字符后,字符串是否能成为回文串,并提出了高效的优化算法。通过详细的分析和代码实现,本文提供了多种解决方案,帮助读者更好地理解和应用这一算法。 ... [详细]
  • 系统数据实体验证异常:多个实体验证失败的错误处理与分析
    在使用MVC和EF框架进行数据保存时,遇到了 `System.Data.Entity.Validation.DbEntityValidationException` 错误,表明存在一个或多个实体验证失败的情况。本文详细分析了该错误的成因,并提出了有效的处理方法,包括检查实体属性的约束条件、调试日志的使用以及优化数据验证逻辑,以确保数据的一致性和完整性。 ... [详细]
author-avatar
晨雨心秋-济微路唐姜合
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有