Centos安装HAProxy搭建Mysql高可用集群负载均衡

接上文MYSQL高可用集群搭建--docker

https://blog.csdn.net/weixin_43914685/article/details/149647589?spm=1001.2014.3001.5501

连接到你搭建的 Percona XtraDB Cluster (PXC) 数据库集群,实现高可用性和负载均衡,建议使用一个中间件来管理这些连接。

1. 更新软件包列表

bash 复制代码
sudo yum update -y

2. 安装 HAProxy

bash 复制代码
sudo yum install haproxy -y

3. 验证安装

bash 复制代码
haproxy -v

4.配置 HAProxy

bash 复制代码
vim /etc/haproxy/haproxy.cfg
global
    log         127.0.0.1 local2

defaults
    log     global
    mode    tcp
    option  tcplog
    option  dontlognull
    timeout connect 5000ms
    timeout client  50000ms
    timeout server  50000ms

frontend mysql_front
    bind *:3306
    default_backend mysql_back

backend mysql_back
    balance roundrobin
    server node1 192.168.0.3:3301 check
    server node2 192.168.0.3:3302 check
    server node3 192.168.0.3:3303 check

此配置中:

  • frontend mysql_front 定义了前端监听的所有流量,端口为 3306。
  • backend mysql_back 定义了后端服务器列表,包括所有 PXC 节点及其对应的端口。
  • balance roundrobin 表示采用轮询的方式分配请求。

5. 启动并启用 HAProxy

bash 复制代码
sudo systemctl start haproxy
sudo systemctl enable haproxy

可选步骤: 添加 EPEL 仓库获取更新版本

如果你希望安装更高版本的 HAProxy,可以添加 EPEL (Extra Packages for Enterprise Linux) 仓库:

bash 复制代码
sudo yum install epel-release -y
sudo yum update -y
sudo yum install haproxy -y

这样可以获得比默认 CentOS 仓库中更新的 HAProxy 版本。不过请注意,这可能会导致与系统其他部分的兼容性问题,因此请根据实际情况谨慎操作。

相关推荐
J_bean7 小时前
MySQL 事务是否必须手动开启?
数据库·mysql·数据库事务·自动提交·手动提交
J_bean7 小时前
MySQL InnoDB 如何检测死锁、判定死锁、处理死锁
数据库·mysql·死锁·死锁检测·处理死锁·死锁判定
冰暮流星12 小时前
mysql之分组查询
数据库·mysql
NiceCloud喜云13 小时前
腾讯云国际版云数据库选型:MySQL、Redis 怎么按业务架构来判断
数据库·mysql·腾讯云
ew4521814 小时前
MySQL JOIN 关联语法、差异、标准用法、经典坑点汇总
数据库·mysql
J_bean18 小时前
剖析 MySQL InnoDB 共享行锁 (S) & 排他行锁 (X)
数据库·mysql·共享行锁·s lock·排他行锁·x lock
技术长镜头18 小时前
别再只说“走 B+Tree”:一条 SQL 在 InnoDB 中的完整寻址过程
后端·mysql
一只fish1 天前
优化器架构对比:Oracle vs PostgreSQL vs MySQL
mysql·postgresql·oracle
暖核2 天前
Nginx 从入门到实践:部署、配置、反向代理与负载均衡全解
运维·nginx·负载均衡
buyue__2 天前
Python实现连接MySQL数据库并执行目录下的所有SQL文件,遇到错误时终止执行。
python·mysql