场景
1.数据库在内网,想要暴露到公网
2.使用的是云数据库RDS,但想要改变端口
方法
-
使用Nginx进行代理转发
-
Nginx需在1.9.0版本以上(该版本以上Nginx新增了一个stream模块,可以用来实现四层协议的转发)
-
配置如下:
stream {
upstream CloudMySQL {
server xxxx.rds.jdcloud.com:3306 weight=5 max_fails=3 fail_timeout=30s;
}
server {
listen 9090;
proxy_pass CloudMySQL;
proxy_timeout 600s;
proxy_connect_timeout 30s;
}
}
http {
...
}
- 重启Nginx