返回顶部
首页 > 资讯 > 数据库 >linux上mysql MM(双主)及keepalived搭建
  • 319
分享到

linux上mysql MM(双主)及keepalived搭建

2024-04-02 19:04:59 319人浏览 薄情痞子
摘要

一、主备机IP及VIP规划: master1 10.1.1.14 VIP 10.1.1.16 master2    10.1.1.15 VIP 10.1.1.16 二、Mysq

一、主备机IP及VIP规划:
master1 10.1.1.14 VIP 10.1.1.16
master2    10.1.1.15 VIP 10.1.1.16

二、Mysql MM配置
1.修改master1的my.cnf
# vi /etc/my.cnf
[mysqld]
basedir = /usr/local/mysql/
datadir=/usr/local/mysql/data
log-error=/usr/local/mysql/mysqld.log
port = 3306
Socket=/usr/local/mysql/mysql.sock
pid-file=/usr/local/mysql/mysql.pid

expire-logs-days=10

#binlog-do-db=db1
#binlog-ignore-db=db2

server-id = 1
log-bin = binlog
relay_log = relay-bin
log_slave_updates =1
auto_increment_increment=2
auto_increment_offset=1

2.修改master2的my.cnf
# vim /etc/my.cnf
[mysqld]
basedir = /usr/local/mysql/
datadir=/usr/local/mysql/data
log-error=/usr/local/mysql/mysqld.log
port = 3306
socket=/usr/local/mysql/mysql.sock
pid-file=/usr/local/mysql/mysql.pid

expire-logs-days=10

#binlog-do-db=db1
#binlog-ignore-db=db2

server-id=2
relay_log=relay-bin
log_bin =binlog
log_slave_updates =1
auto_increment_increment=2
auto_increment_offset=2


3.创建master1复制账号
  grant replication slave,replication client on *.* to 'repl'@'10.1.1.15' identified by 'repl';
  
4.创建master2复制账号
  grant replication slave,replication client on *.* to 'repl'@'10.1.1.14' identified by 'repl';
  
5.为master1配置master
  show master status;
  change master to master_host='10.1.1.15',master_user='repl',master_passWord='repl',master_log_file='binlog.000005',master_log_pos=154;


6.为master2配置master
  show master status;
  change master to master_host='10.1.1.14',master_user='repl',master_password='repl',master_log_file='binlog.000001',master_log_pos=154;
  
7.启动slave
  master1:
  start slave;
  master2:
  start slave;

三、keepalived配置
1.编辑master1的keepalived配置文件
  #vi /etc/keepalived/keepalived.conf

! Configuration File for keepalived
global_defs {
    #配置告警通知邮箱,可以配置多个
   notification_email {
    root@localhost
   }
   #配置邮件发送目标地址
   notification_email_from mysql@xiaomi.com
   #配置smtp服务器地址,其必须存在
   smtp_server 10.1.1.11
   #配置连接smtp服务器的超时时间
   smtp_connect_timeout 30
   #设置运行Keepalived实例的标识,其将显示于邮件标题中
   router_id mysql_ha
}
#监控脚本
vrrp_script chk_mysql {
    script "/etc/keepalived/check_mysql.sh"
    interval 2
    weight 2
}
#配置VRRP实例,实例命名任意
vrrp_instance mysql-ha {
    #配置Keepalived角色,MASTER为主机 BACKUP为备机,此处两个都设置为BACKUP
    state BACKUP 
    #配置keepalived监测的网络接口
    interface eth0
    #虚拟路由标识,其为一个(1-255)的数字,一个VRRP实例中主机的该ID必须相同
    virtual_router_id 66
    #服务器优先级,数字越大优先级越高,一个实例中主服务器优先级要高于备服务器
    priority 50  
    #配置主备服务器间同步检查的时间间隔(秒)
    advert_int 1
    #配置服务器抢占模式,这里配置为非抢占模式(只需对master1配置即可)
    nopreempt
    #配置验证类型和密码
    authentication {
        #两种验证类型{PASS|HA}
        auth_type PASS
        #指定验证密码,一个实例中的主备服务器密码要一样
        auth_pass Centos
    }
    track_script {
    #指定执行监控的服务
        chk_mysql
    }
    #配置虚拟IP,可指定有多个,每个占一行
    virtual_ipaddress {
    10.1.1.16
    }
}

2.编辑master1心跳检测脚本:
#vi /etc/keepalived/check_mysql.sh 

#!/bin/bash
#This scripts is check for Mysql Slave status
counter=$(netstat -na|grep "LISTEN"|grep "3311"|wc -l)
if [ "${counter}" -eq 0 ]; then
    service keepalived stop
    killall keepalived
fi
ping 10.1.1.14 -w1 -c1 &>/dev/null
if [ $? -ne 0 ]
then
    systemctl stop keepalived
    killall keepalived
fi

3.编辑master2的keepalived配置文件
# vim /etc/keepalived/keepalived.conf 

! Configuration File for keepalived
global_defs {
   #配置告警通知邮箱,可以配置多个
   notification_email {
    root@localhost
   }
   #配置邮件发送目标地址
   notification_email_from mysql@xiaomi.com
   #配置smtp服务器地址,其必须存在
   smtp_server 10.1.1.11
   #配置连接smtp服务器的超时时间
   smtp_connect_timeout 30
   #设置运行Keepalived实例的标识,其将显示于邮件标题中
   router_id mysql_ha
}
# 监控监本
vrrp_script chk_mysql {
    script "/etc/keepalived/check_mysql.sh"
    interval 2
    weight 2
}
#配置VRRP实例,实例命名任意
vrrp_instance mysql-ha {
    #配置Keepalived角色,MASTER为主机 BACKUP为备机,此处两个都设置为BACKUP
    state BACKUP
    #配置keepalived监测的网络接口
    interface eth0
    #虚拟路由标识,其为一个(1-255)的数字,一个VRRP实例中主机的该ID必须相同
    virtual_router_id 66
    #服务器优先级,数字越大优先级越高,一个实例中主服务器优先级要高于备服务器
    priority 49
    #配置主备服务器间同步检查的时间间隔(秒)
    advert_int 1
    #配置服务器抢占模式,这里配置为非抢占模式(只需对master1配置即可)
    #nopreempt
    #配置验证类型和密码
    authentication {
        #两种验证类型{PASS|HA}
        auth_type PASS
        #指定验证密码,一个实例中的主备服务器密码要一样
        auth_pass centos
    }
    track_script {
    #指定执行监控的服务
        chk_mysql  
    }
    #配置虚拟IP,可指定有多个,每个占一行
    virtual_ipaddress {
    10.1.1.16
    }
}

4.编辑master2检测脚本
# vim /etc/keepalived/check_mysql.sh 

#!/bin/bash
#This scripts is check for Mysql Slave status
counter=$(netstat -na|grep "LISTEN"|grep "3306"|wc -l)
if [ "${counter}" -eq 0 ]; then
    systemctl stop keepalived
    killall keepalived
fi
ping 10.1.1.15 -w1 -c1 &>/dev/null
if [ $? -ne 0 ]
then
    service keepalived stop
    killall keepalived
fi

5.vip漂移检测
1)master1和master2上同时开启keepalived和mysql
  #service keepalived start
  #service mysqld start
2)查看master1上ip地址
  ip addr
3)登录10.1.1.16上的mysql
  mysql -uusername -ppassword -h20.1.1.16 -P3311
4)停掉master1上的mysql服务
  service mysqld stop
5)观察master1和master2上的ip地址
  ip addr
6)继续在3)中的session中运行mysql命令,看看发生了什么
  mysql> use infORMation_schema;
 

您可能感兴趣的文档:

--结束END--

本文标题: linux上mysql MM(双主)及keepalived搭建

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

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

猜你喜欢
  • linux上mysql MM(双主)及keepalived搭建
    一、主备机IP及VIP规划: master1 10.1.1.14 VIP 10.1.1.16 master2    10.1.1.15 VIP 10.1.1.16 二、mysq...
    99+
    2024-04-02
  • 搭建MySQL双主MM+keepalived高可用架构的具体流程
    下文我给大家简单讲讲关于搭建MySQL双主MM+keepalived高可用架构的具体流程,大家之前了解过相关类似主题内容吗?感兴趣的话就一起来看看这篇文章吧,相信看完搭建MySQL双主MM+keepaliv...
    99+
    2024-04-02
  • Ubuntu搭建Mysql+Keepalived高可用的实现(双主热备)
    Mysql5.5双机热备 实现方案 安装两台Mysql 安装Mysql5.5 sudo apt-get update apt-get install aptitud...
    99+
    2024-04-02
  • MySQL主从配置及haproxy和keepalived搭建过程解析
    目录docker 小知识创建harpoxy、Keepalive 的容器下载MySQLMySQL主主配置172.17.0.2 MySQL 配置172.17.0.2的配置执行sql命令M...
    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
  • mysql搭建主从复制(一主一从,双主双从)
    主从复制原理 Mysql 中有一个binlog 二进制日志,这个日志会记录下所有修改了的SQL 语句,从服务器把主服务器上的binlog二进制日志在指定的位置开始复制主服务器所进行修改的语句到从服务器上执行一遍。 流程图 搭建一...
    99+
    2016-07-17
    mysql搭建主从复制(一主一从,双主双从)
  • Mysql双主搭建的方法步骤
    目录1. mysql binlog参数配置2. Mysql binlog查看详细内容3. Mysql双主搭建4. Mysql双主解决数据回环4.1 双主同步测试一4.2 双主同步测试二4.3 双主同步测试三1. Mysq...
    99+
    2023-01-13
    Mysql双主搭建 Mysql双主
  • 如何搭建keepalived+nginx+httpd+dns高可用双主反向代理服务器
    如何搭建keepalived+nginx+httpd+dns高可用双主反向代理服务器,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。rs服务器安装httpd,ip为:192.16...
    99+
    2023-06-05
  • linux搭建mysql主从服务
    网上找了N多资料,没有一个可以顺利成功的,郁闷,可能是水平有限吧...!本人经过不断的研究、测试,完整实现linux下启动两台Mysql,而且对mysql有了更深入的了解...废话不多说,走着! ...
    99+
    2024-04-02
  • 部署搭建MySQL双向主从复制流程
    下面一起来了解下部署搭建MySQL双向主从复制流程,相信大家看完肯定会受益匪浅,文字在精不在多,希望部署搭建MySQL双向主从复制流程这篇短内容是你想要的。作为Master云服务器apenglinux-00...
    99+
    2024-04-02
  • 在cnetos7上搭建mysql主从服务
    本文主要是介绍在centos上搭建mysql的主从服务器。如果没有搭建过的,可以查看我以前的博客,里面有详细的安装centos和在centos上安装mysql的说明。 一.安装从虚拟机:        1.右键—>管理—>克隆       ...
    99+
    2017-03-19
    在cnetos7上搭建mysql主从服务
  • MySQL 主从复制原理及搭建
    一.主从复制的工作过程:二.MySQL复制类型基于SQL语句的复制基于行的复制混合复制三.实验环境  OS:CentOS 6.5 x64  master:192.168.0.134&nb...
    99+
    2024-04-02
  • 实现互为双主搭建MySQL数据库方法
    本文主要给大家简单讲讲实现互为双主搭建MySQL数据库方法,相关专业术语大家可以上网查查或者找一些相关书籍补充一下,这里就不涉猎了,我们就直奔主题吧,希望实现互为双主搭建MySQL数据库方法这篇文章可以给大...
    99+
    2024-04-02
  • 如何进行mysql 5.6不停机双主一从搭建
    今天就跟大家聊聊有关如何进行mysql 5.6不停机双主一从搭建,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。 环境说明:版本 version 5...
    99+
    2024-04-02
  • Linux下搭建MySQL的主从复制(一)
    一从一主模式的搭建1.主从复制原理 1. 从服务器使用IO Thread向主服务器发送请求   2. 主服务器接受到请求之后,将二进制日志文件通过...
    99+
    2024-04-02
  • linux环境下搭建MySQL数据库的双击热备
    准备服务器 由于Mysql不同版本之间的(二进制日志)binlog格式可能会不太一样,因此最好的搭配组合是主(Master)服务器的Mysql版本和从(Slave)服务器版本相同或者更低,主服务器的版本...
    99+
    2024-04-02
  • windows上mysql如何进行主从数据库搭建及问题是什么
    今天就跟大家聊聊有关windows上mysql如何进行主从数据库搭建及问题是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。 根据前篇web项目...
    99+
    2024-04-02
  • Linux上怎么搭建和管理MySQL数据库
    在Linux上搭建和管理MySQL数据库通常需要以下步骤: 下载并安装MySQL软件包:可以通过官方网站下载MySQL的安装包,...
    99+
    2024-04-28
    Linux MySQL
  • 如何在linux系统中搭建mysql主从服务器?
    实现目标现在需要搭建两台MySQL服务器(一主一从),一台作为主服务器,一台作为从服务器,主服务器进行写操作,从服务器进行读操作。工作流程主服务器:开启二进制日志配置唯一的server-id获得master...
    99+
    2024-04-02
  • ​MySQL数据库5.6.16.主从复制如何搭建及配置
    下面一起来了解下MySQL数据库5.6.16.主从复制如何搭建及配置,相信大家看完肯定会受益匪浅,文字在精不在多,希望MySQL数据库5.6.16.主从复制如何搭建及配置这篇短内容是你想要的。MySQL数据...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作