Nginx 代理 MySQL 实现通过域名连接数据库

逢生博客 2024-08-13 11:37:01 阅读 54

文章目录

Nginx 模块介绍Stream 模块配置MySQL 配置文件远程连接 MySQLDataGrip 连接 MySQL

Nginx、MySQL 安装这里不做介绍。域名默认已经解析到服务器公网IP。

Nginx 模块介绍

HTTP 模块: HTTP模块提供了处理HTTP请求的功能,包括反向代理、负载均衡、缓存、HTTP代理等。

例如:proxy模块用于反向代理和负载均衡,fastcgi模块用于处理FastCGI请求。

Stream 模块: Stream模块用于处理TCPUDP流量,允许Nginx作为代理服务器处理非HTTP流量。

例如:stream模块用于配置TCP代理和负载均衡。

Stream 模块配置

<code># 修改 nginx 主配置文件

vim /etc/nginx/nginx.conf

stream {

include /etc/nginx/conf.d/stream/*.conf;

}

在这里插入图片描述

<code>cd /etc/nginx/conf.d/

mkdir stream && cd stream

# 创建 nginx stream 配置

vim mysql_3320.conf

upstream mysql3320 {

server 192.168.0.164:3306;

}

server {

listen 3320; # 如果监听3306,远程登录的时不用加-p参数

proxy_connect_timeout 500s;

proxy_timeout 500s;

proxy_pass mysql3320;

}

# 重新加载配置

nginx -s reload

MySQL 配置文件

# IP连接限制放开

bind_address=0.0.0.0

远程连接 MySQL

mysql -h <域名> -P 3320 -u root -p

在这里插入图片描述

DataGrip 连接 MySQL

在这里插入图片描述



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。