_ 本篇文章介绍的是通过Nginx官方ngx_stream_core_module
模块实现的tcp反向代理到 MySQL,配置前请确保nginx的版本在1.9.0以上_
本次配置是基于 fedora25 系统搭建,实践中请根据具体环境进行操作
安装nginx
>> dnf -y install nginx nginx-mod-stream
编辑配置
修改nginx的配置文件/etc/nginx/nginx.conf ,和http节点平级,添加如下的配置
stream {
upstream mysql {
hash $remote_addr consistent;
server 192.168.10.5:3306 max_fails=3 fail_timeout=30s;
}
server {
listen 3306;
proxy_connect_timeout 30s;
proxy_timeout 600s;
proxy_pass mysql;
}
}
可以通过 nginx -t 测试配置的正确性
重启服务
>> systemctl restart nginx
最后通过 提供反向代理服务的服务器IP、端口号3306、MySQL的用户名/密码可以成功连接到内网的数据库