`

nginx转发mysql连接

阅读更多

场景:

访问UAT环境,只能使用客户电脑访问,太难用了,于是就需要在自己电脑上跑代码,通过客户电脑中转来访问uat环境的数据库。

选用nginx进行转发。配置如下:

stream {
    upstream cloudsocket {
       hash $remote_addr consistent;
       server 192.168.182.155:3306 weight=5 max_fails=3 fail_timeout=30s;
    }
    server {
       listen 3306;#数据库服务器监听端口
       proxy_connect_timeout 10s;
       proxy_timeout 300s;#设置客户端和代理服务之间的超时时间,如果5分钟内没操作将自动断开。
       proxy_pass cloudsocket;
    }
}

 重启。

访问nginx所在机器的ip和配置的3306端口,输入账号密码,就可以转发mysql连接了。

注意 stream和http是同级别的,不要放入http里面。

原理,查了一顿,没整明白,以后有时间在研究。

只有一点点:

nginx从1.9.0开始,新增加了一个stream模块,用来实现四层协议的转发、代理或者负载均衡等。比如在内网有一个mysql服务,想暴露到公网上去使用,就可以通过nginx代理的方式通过nginx来进行内网mysql的访问。

分享到:
评论

相关推荐

    Nginx实现MYSQL主备高可用

    Nginx在此过程中扮演了关键角色,它可以根据预设策略将请求转发到合适的服务器。例如,Nginx可以设置为只将写请求发送到主服务器,而将读请求分散到多个从服务器,这样既能保证数据一致性,又能提高读取性能。此外,...

    zabbix-web-nginx-mysql.tar

    3. 安装Zabbix服务器和代理:这包括安装Zabbix服务器软件,配置Zabbix服务连接MySQL数据库,并设置必要的参数。 4. 安装Nginx:安装Nginx服务器,配置反向代理规则,将HTTP请求转发至Zabbix Web接口。 5. 部署Zabbix...

    lnmp(centos6.2+nginx+mysql+php)环境搭建系统教程--宋正河

    同样通过YUM安装PHP,同时安装必要的扩展如`php-mysql`以支持MySQL连接。配置`/etc/php.ini`文件,调整相关参数以满足应用需求。 4. **LNMP整合**: 配置好Nginx、MySQL和PHP后,需要将它们整合起来。在Nginx的...

    centos nginx php mysql 集成

    标题 "centos nginx php mysql 集成" 涉及到的是在 CentOS 操作系统上搭建一个常见的 Web 开发环境,即 LEMP (Linux, Nginx, PHP, MySQL) 堆栈。这个环境广泛用于静态内容的高效分发和动态内容的处理,比如运行基于 ...

    nigix实现MYSQL主备高可用双活

    - **TCP代理**:Nginx可以直接通过TCP连接到MySQL服务器,根据配置的策略进行转发。 - **HTTP/RESTful API**:Nginx也可以通过HTTP接口与支持该协议的MySQL服务(如MySQL Router)通信。 3. **配置Nginx**: - *...

    ①Nginx+MySQL+PHP

    当请求这些PHP文件时,Nginx会将请求转发给PHP解释器来执行,然后将结果返回给客户端。MySQL数据库则需要正确配置,以便PHP能够通过数据库连接来读取或写入数据。 总结来说,Nginx+MySQL+PHP的技术组合为Web开发...

    win nginx php mysql memcache集成环境

    在集成环境中,Nginx会将动态请求转发给PHP解析器(例如`php-fpm`),解析后的结果再返回给客户端。在本环境中,可能有一个名为`Zerver.exe`的程序来处理PHP请求。 3. **MySQL**:MySQL是世界上最流行的开源关系型...

    Nginx+PHP+MySQL (Windows版)

    Nginx采用事件驱动的异步非阻塞模型,能处理大量的并发连接,特别适合于高流量网站。在Windows上安装Nginx,你可以通过下载预编译的二进制文件进行快速部署。安装后,Nginx会监听默认的80端口,用于接收和转发HTTP...

    lnmp: php7.1+nginx1.11+mysql5.6+yaf+redis

    在 LNMP架构中,Nginx作为前端服务器,负责接收来自用户的请求,根据配置转发到PHP处理器,并将处理结果返回给用户。 **MySQL5.6**: MySQL5.6是流行的开源关系型数据库管理系统,用于存储和管理网站数据。这个版本...

    方便实用的本地web服务器Nginx+PHP+Mysql

    6. **连接MySQL**: 在PHP环境中设置MySQL连接,如使用`mysqli`或`PDO`扩展。 7. **测试环境**: 通过访问`http://localhost`检查Nginx是否正常工作,然后创建一个简单的PHP脚本来测试PHP和MySQL的连接。 **压缩包...

    一键安装mysql,redis,nginx,rabbitmq脚本

    通过一键安装脚本,你可以快速配置Nginx,为你的Web应用提供高效的静态资源服务和动态请求转发。 最后,RabbitMQ是一种基于AMQP(Advanced Message Queuing Protocol)的消息队列服务,常用于实现异步任务处理和...

    基于Python + Fastdfs + Nginx + Mysql 的分布式文件存储平台.zip

    【标题】: "基于Python + Fastdfs + Nginx + Mysql 的分布式文件存储平台" 在当前的数字化时代,文件存储的需求日益增大,特别是在大数据、云计算等领域的快速发展下,传统的单机文件系统已经无法满足需求。因此,...

    nginx+apache+mysql+php+memcached+squid搭建门户网站

    ### Nginx+Apache+MySQL+PHP+Memcached+Squid 搭建门户网站 #### 一、前言与架构概述 随着互联网技术的发展,如何构建一个高效、稳定且能够应对高并发访问的Web服务器成为了许多企业和开发者关注的重点。本文将...

    vue+Tornado+Nginx+Mysql

    在“vue+Tornado+Nginx+Mysql”这样的架构中,Vue.js 负责构建用户友好的前端界面,与Tornado通过API进行交互。Tornado作为后端服务器,处理业务逻辑和数据操作,利用MySQL存储和检索数据。Nginx作为反向代理服务器...

    django项目部署 nginx+gunicorn+virtualenv+mysql

    - **配置Django连接MySQL**:在Django项目的`settings.py`文件中设置数据库连接信息,例如: ```python DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'mydb', 'USER': 'root', ...

    nginx反向代理时如何保持长连接

    对于客户端到Nginx的长连接,Nginx默认已经启用了对客户端连接的Keep-Alive支持。不过,有时我们需要根据具体需求调整Nginx的配置参数。`keepalive_timeout`指定了客户端连接的超时时间,设置为0则禁用长连接。`...

    一键lnmp(nginx 1.13+mysql5.5+php5.3)

    5. **验证运行**:测试Nginx是否能正确处理请求,MySQL是否可以连接,PHP是否能解析PHP文件。 **总结** 一键LNMP工具极大地简化了Web开发环境的搭建,使得开发者能够快速构建一个功能完备的服务器环境。Nginx 1.13...

    vue+Tornado+Nginx+Mysql--后台代码

    4. 服务器配置:Nginx 部署在最外层,接收客户端请求,分发静态资源并转发动态请求到Tornado服务器。 开发流程可能包括: 1. 创建Vue项目,搭建前端框架,编写组件和路由。 2. 设计并实现Tornado的API接口,处理...

Global site tag (gtag.js) - Google Analytics