首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >在Haproxy负载均衡模式下,Percona8.0可以得到后端Java/PHP应用程序的真实IP

在Haproxy负载均衡模式下,Percona8.0可以得到后端Java/PHP应用程序的真实IP

原创
作者头像
贺春旸的技术博客
发布2024-01-23 14:08:37
发布2024-01-23 14:08:37
2600
举报
文章被收录于专栏:DBA 平台和工具DBA 平台和工具

在Haproxy负载均衡模式下,P e rcona8.0可以得到后端Java/PHP应用程序的真实IP。

架构:Java -> Haproxy -> MySQL Slave(对从库做负载均衡读)

在MySQL 8.0里,执行show processlist或者查看慢日志slow.log,只能查看到Haproxy的代理IP,无法得到真实应用的IP地址。

这对于排查线上慢SQL,给研发带来了难度,定位问题很困难。

那么你可以切换到Percona8.0。

实现:

1) 需要在Haproxy里设置send-proxy

server 192.168.198.239 192.168.198.239:3306 send-proxy inter 2000 rise 3 fall 3

注:(192.168.198.239为后端MySQL节点)

重启haproxy进程生效。

2) 需要用Percona替换MySQL

设置参数

proxy_protocol_networks = *

注:重启mysqld进程生效

此时,你登录Percona 8.0里,执行show processlist或者查看慢日志slow.log,就可以查看到真实的应用程序IP了。

参考: https://docs.percona.com/percona-server/8.0/proxy-protocol-support.html#proxy_protocol_networks

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 架构:Java -> Haproxy -> MySQL Slave(对从库做负载均衡读)
  • 实现:
    • 1) 需要在Haproxy里设置send-proxy
    • 2) 需要用Percona替换MySQL
  • 此时,你登录Percona 8.0里,执行show processlist或者查看慢日志slow.log,就可以查看到真实的应用程序IP了。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档