nginx

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > nginx > Nginx代理MySQL域名连接数据库

Nginx代理MySQL实现通过域名连接数据库的详细教程

作者:逢生博客

我们的生产环境基本上都部署在云服务器上,例如应用服务器、MySQL服务器等,如果MySQL服务器直接暴露在公网,就会存在很大的风险,为了保证数据安全,MySQL服务器的端口是不对外开放的,所以本文介绍了Nginx代理MySQL实现通过域名连接数据库的详细教程

Nginx 模块介绍

  1. HTTP 模块: HTTP模块提供了处理HTTP请求的功能,包括反向代理、负载均衡、缓存、HTTP代理等。
  1. Stream 模块: Stream模块用于处理TCPUDP流量,允许Nginx作为代理服务器处理非HTTP流量。

Stream 模块配置

# 修改 nginx 主配置文件
vim /etc/nginx/nginx.conf
stream {
   include /etc/nginx/conf.d/stream/*.conf;
}

在这里插入图片描述

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

在这里插入图片描述

到此这篇关于Nginx代理MySQL实现通过域名连接数据库的详细教程的文章就介绍到这了,更多相关Nginx代理MySQL域名连接数据库内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文