keepalived+mysql双机高可用

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

192.168.10(MySQL,keepalived)192.168.20(MySQL,keepalived)192.168.100(连接测试)

  1. 构建MySQL互为主主同步

    (1)首先分别在10和20主机上安装MySQL

    (2)在两台主机上修改配置文件,开启bin-log日志

    (3)首先在10上做授权:grant  replication slave  on *.*  to slaveuser@"192.168.136.20" identified by "123456";

    (4)然后查看10的master状态:show master status;

    (5)在20服务器上进行同步配置:change  master  to master_host="192.168.136.10",master_user="slaveuser",master_password="123456",master_log_file="master.000001",master_log_pos=107;

    (6)开启slave:start slave

    (7)查看slave状态:show slave status\G

    (8)此时20是10的从,然后再20主机做相同的操作,让10作为20的从,然后两主机互为主主结构

    (9)分别在两台主机上操作数据库,查看是否同步

  2. 安装配置keepalived,故障转移

    (1)分别在10和20上安装keepalived

    (2)修改10的keepalived配置文件

global_defs {

   notification_email {

        18600135671@139.com

   }

   notification_email_from  18600135671@139.com

   smtp_server 127.0.0.1

   smtp_connect_timeout 30

   router_id mysql-ha

}


vrrp_instance VI_1 {

    state BACKUP

    interface eth0

    virtual_router_id 30

    priority 90  #设置优先级大

    advert_int 1

    authentication {

        auth_type PASS

        auth_pass 1111

    }

    virtual_ipaddress {

        192.168.136.100

    }

}


virtual_server 192.168.136.100 3306 {

    delay_loop 2

    lb_algo wrr

    lb_kind DR

    persistence_timeout 60

    protocol TCP


    real_server 192.168.136.10 3306 {

        weight 3

        notify_down /var/lib/mysql/mysql.sh  #检测MySQL服务停掉之后执行的脚本


        TCP_CHECK {

            connect_timeout 10

            nb_get_retry 3

            delay_before_retry 3

            connect_port 3306

        }

    }

}

(3)修改20的keepalived配置文件

global_defs {

   notification_email {

        18600135671@139.com

   }

   notification_email_from  18600135671@139.com

   smtp_server 127.0.0.1

   smtp_connect_timeout 30

   router_id mysql-ha

}


vrrp_instance VI_1 {

    state BACKUP

    interface eth0

    virtual_router_id 30

    priority 50  #设置优先级小

    advert_int 1

    authentication {

        auth_type PASS

        auth_pass 1111

    }

    virtual_ipaddress {

        192.168.136.100

    }

}


virtual_server 192.168.136.100 3306 {

    delay_loop 2

    lb_algo wrr

    lb_kind DR

    persistence_timeout 60

    protocol TCP


    real_server 192.168.136.20 3306 {

        weight 3

        notify_down /usr/local/mysql/bin/mysql.sh


        TCP_CHECK {

            connect_timeout 10

            nb_get_retry 3

            delay_before_retry 3

            connect_port 3306

        }

    }

}

(4)mysql.sh脚本文件

service network restart

service keepalived stop

sleep 10

mysql=`ps -ef | grep mysqld | grep -v grep`

if [ -z "$mysql" ];then

rm -rf /var/lib/mysql/mysql.sock

service mysqld start

fi

service keepalived start

(5)测试故障转移

首先ip a命令查看VIP是否出现

然后停掉10的MySQL服务,然后等下看MySQL是否自动启动

停掉10的keepalived服务,看20是否切换到VIP

然后在10和20授权30可以登录VIP MySQL

在30上连接VIP MySQL测试功能










本文转自 无心低语 51CTO博客,原文链接:http://blog.51cto.com/fengzhankui/1617551,如需转载请自行联系原作者

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
2月前
|
存储 关系型数据库 MySQL
Mysql高可用|索引|事务 | 调优
Mysql高可用|索引|事务 | 调优
|
3月前
|
SQL 容灾 关系型数据库
rds容灾与高可用
rds容灾与高可用
28 4
|
3月前
|
关系型数据库 MySQL
电子好书发您分享《MySQL MGR 8.0高可用实战》
电子好书发您分享《MySQL MGR 8.0高可用实战》 电子好书发您分享《MySQL MGR 8.0高可用实战》
90 1
|
2月前
|
监控 容灾 关系型数据库
rds容灾与高可用
rds容灾与高可用
46 6
|
3月前
|
SQL 关系型数据库 MySQL
Mysql高可用,索引,事务与调优:提高数据库性能的关键技术
在当今互联网时代,高可用性、稳定性和性能是数据库的三大关键要素。本文将深入探讨Mysql高可用、索引、事务和调优等方面的技术,为读者提供实用的解决方案和经验。
24 0
|
3月前
|
监控 关系型数据库 MySQL
MySQL高可用与性能优化综述
MySQL作为一种常用的关系型数据库管理系统,高可用性、索引优化、事务处理和性能调优一直是开发人员和运维人员关注的重点。本文将从MySQL高可用性解决方案、索引设计与优化、事务处理最佳实践以及性能调优策略等方面进行探讨,为读者提供全面的MySQL技术知识概览。
|
3月前
|
SQL 缓存 关系型数据库
MySQL高可用与性能优化——从索引到事务
MySQL是一款常用的关系型数据库,但在实际应用中,如何保证其高可用性与性能优化依然是一个值得探讨的话题。本文将从索引的创建和优化、事务的处理以及常见的性能瓶颈入手,为读者提供MySQL高可用与性能优化的实践经验。
|
11天前
|
关系型数据库 MySQL 数据库
mysql卸载、下载、安装(window版本)
mysql卸载、下载、安装(window版本)
|
1月前
|
关系型数据库 MySQL 数据库连接
关于MySQL-ODBC的zip包安装方法
关于MySQL-ODBC的zip包安装方法
|
29天前
|
关系型数据库 MySQL 数据库
rds安装数据库客户端工具
安装阿里云RDS的数据库客户端涉及在本地安装对应类型(如MySQL、PostgreSQL)的客户端工具。对于MySQL,可选择MySQL Command-Line Client或图形化工具如Navicat,安装后输入RDS实例的连接参数进行连接。对于PostgreSQL,可以使用`psql`命令行工具或图形化客户端如PgAdmin。首先从阿里云控制台获取连接信息,然后按照官方文档安装客户端,最后配置客户端连接以确保遵循安全指引。
82 1