默认Nginx只支持http的反向代理,要想nginx支持tcp的反向代理,还需要在编译时增加tcp代理模块支持,即nginx_tcp_proxy_module

下面操作步骤只让nginx支持tcp_proxy,没有加入prce、gzip、ssl等功能,如需要,可自行在编译时加上相关参数。

wget https://github.com/yaoweibin/nginx_tcp_proxy_module/archive/master.zip
unzip mastertar -zxvf nginx-1.6.3.tar.gz
cd nginx-1.6.3
patch -p1 < ../nginx_tcp_proxy_module-master/tcp.patch
./configure --add-module=../nginx_tcp_proxy_module-master --prefix=/usr/local/nginx-1.6.3 --with-http_stub_status_module --with-http_gzip_static_module
make
make install

nginx.conf主配置文件中增加如下配置配置:(也可以在主配置文件中配置include,包含tcp转发的配置文件include /usr/local/nginx-1.6.3/conf/tcp_proxy.conf;)

user  nobody;
worker_processes  1;#error_log  logs/error.log;
#error_log  logs/error.log  notice;
error_log  logs/error.log  info;#pid        logs/nginx.pid;events {worker_connections  1024;
}include /usr/local/nginx-1.6.3/conf/tcp_proxy.conf;http {include       mime.types;default_type  application/octet-stream;log_format  main  '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';#access_log  logs/access.log  main;sendfile        on;#tcp_nopush     on;#keepalive_timeout  0;keepalive_timeout  65;#gzip  on;server {listen       3306;server_name  localhost;#charset koi8-r;#access_log  logs/host.access.log  main;location / {root   html;index  index.html index.htm;}location /nginx_status {stub_status on;access_log  logs/nginx_status.log;allow 10.195.197.124;deny all;}#error_page  404              /404.html;# redirect server error pages to the static page /50x.html#error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}}}

include /usr/local/nginx-1.6.3/conf/tcp_proxy.conf;

tcp {upstream mysql {server 10.207.238.66:3306;server 10.207.238.67:3306;check interval=3000 rise=2 fall=5 timeout=1000;#check interval=3000 rise=2 fall=5 timeout=1000#check interval=3000 rise=2 fall=5 timeout=1000#check_http_send "GET /HTTP/1.0\r\n\r\n";#check_http_expect_alive http_2xxhttp_3xx;}server {
listen 3307;proxy_pass mysql;}
}

说明:
check interval 健康检查,单位是毫秒
rise 检查几次正常后,将reslserver加入以负载列表中
fall 检查几次失败后,摘除realserver
timeout 检查超时时间,单位许毫秒
具体可查看nginx_tcp_proxy_module-master/README,很详细。

转自

nginx 实现mysql的负载均衡 - ---張榮---的个人空间
https://my.oschina.net/ambari/blog/615203

转载于:https://www.cnblogs.com/paul8339/p/6934266.html

nginx 实现mysql的负载均衡【转】相关推荐

  1. 1445.32php,nginx实现mysql的负载均衡

    1.下载module模块 $ tar -xzvf nginx-1.2.1.tar.gz $ cd nginx-1.2.1/ $ patch -p1 < /path/to/nginx_tcp_pr ...

  2. 使用Nginx、Keepalived构建负载均衡

    对于一个访问量日益增加的网站架构而言,从单机到集群.从集群到分布式,架构演化是必然的. 接手环境,分析瓶颈,扩展架构 笔者现在的环境在刚接手时算是单机LAMP环境.在单机LAMP环境时,由于访问量逐渐 ...

  3. Linux系统——Nginx反向代理与负载均衡

    集群 集群是指一组(若干个)相互独立的计算机,利用高速通信网路组成的一个较大的计算机服务系统,每个集群节点(即集群中的每台计算机)都是运用各自服务的独立服务器.这些服务器之间可以彼此通信,协同向用户提 ...

  4. Nginx反向代理与负载均衡应用实践

    本链接转载自:https://www.cnblogs.com/chensiqiqi/p/9162926.html 仅供自学使用. 1.1 集群简介 简单地说,集群就是指一组(若干个)相互独立的计算机, ...

  5. 从0开始,在Linux中配置Nginx反向代理、负载均衡、session共享、动静分离

    写这篇文章花费了我近一周的时间,参考网上许多优秀的博客文章,我不敢说写的很好,至少很全很详细.本文先介绍原理部分,然后再进行实战操作,我认为这样才会有更深的理解,不过这也导致了文章篇幅很长.但是,如果 ...

  6. Nginx面试三连问:Nginx如何工作?负载均衡策略有哪些?如何限流?

    点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 1.什么是Nginx,谈谈个人都理解,项目中是否用到,为什 ...

  7. 懂点 Nginx 反向代理与负载均衡,是面试加分项没有之一

    点击上方"方志朋",选择"置顶公众号" 技术文章第一时间送达! 学到老活到老 前端圈一直很新,一直要不停的学习,而且在进入大厂的路上,还要求熟悉一门后台语言等等 ...

  8. 介绍下Nginx 反向代理与负载均衡

    Nginx的代理功能与负载均衡功能是最常被用到的,这篇就开门见山,先描述一些关于代理功能的配置,再说明负载均衡详细. Nginx 代理服务的配置说明 1.设置 404 页面导向地址 error_pag ...

  9. 【Nginx】面试官:给我讲讲Nginx如何实现四层负载均衡?

    写在前面 这次又被问到Nginx四层负载均衡的问题了,别慌,我们一起来细细分析这个看似简单的问题. 负载均衡可以分为静态负载均衡和动态负载均衡,接下来,我们就一起来分析下Nginx如何实现四层静态负载 ...

最新文章

  1. CS231n 学习笔记(3)——神经网络 part3 :最优化
  2. xx is not in the sudoers file 问题解决
  3. Tips——RN webview如何实现首次加载自动登录及后续定时登录
  4. Apollo核心概念
  5. sonar 服务器搭建 遇到各种问题
  6. leetcode-665-Non-decreasing Array
  7. 几个颇有创意的网站推广方法(推荐)
  8. [程序员面试金典][JAVA][第02.01题][移除重复节点][Set][双指针]
  9. Bootstrap 支持的设备类型
  10. python如何复制文件?
  11. Fuel 9.0安装Openstack网络验证失败解决
  12. jsf 导航_JSF页面导航示例教程
  13. 程序员面试金典——9.2机器人走方格
  14. Salesforce和SAP HANA的元数据访问加速
  15. Jupyter启动报错 ImportError: DLL load failed while importing error
  16. UESTC 1639 云中谁寄锦书来?雁字回时,月满西楼
  17. 视网膜数据集(2)Messidor
  18. 计算机图形学:Mesh
  19. Error: Can‘t locate revision identified by ‘xxx‘
  20. [附源码]计算机毕业设计Python+uniapp智慧校园APP的设计与实现55q4l(程序+lw+APP+远程部署)

热门文章

  1. 81.游戏项目-物体任意角度飞行和停止
  2. 【转】ROWNUM与ORDER BY先后关系
  3. gvim 编辑器初学
  4. 2-RabbitMQ核心概念及AMQP协议
  5. 1732: 数花费(Kruscal)
  6. 贪心(用了结构体排序)
  7. linux 7.0修改网卡ip,CentOS7修改网卡为静态IP
  8. 技术分享 |《原神》部分渲染效果分析
  9. 开发笔记:游戏逻辑模块组织及数据同步
  10. UltraEdit批量删除关键字所在的指定行