Nginx实现数据库端口转发
前言
因开发、测试、生成等服务器网络策略问题,导致部分服务器A需要访问数据库而无法正常访问数据库,此处采用端口代理方式解决此问题,即通过一台能正常访问数据库的服务器B做tcp端口代理,实现服务器A通过代理服务器B的指定端口,便可连接数据库。
说明
1、Nginx实现TCP端口转发,需要依赖stream模块,即编译安装时带 --with-stream --with-stream_ssl_module 参数;
2、已安装好的nginx可通过nginx -V查看是否带有此模块;
3、若没有安装此模块,可动态添加,参考连接:https://www.cnblogs.com/kazihuo/p/10755955.html
操作
# 添加Nginx代理配置(红色框内容),ip和port是数据库地址信息;
# 重启Nginx;
[root@kazihuo ~]# nginx -s reload
# 查看端口;
[root@kazihuo ~]# ss -atunpl|grep nginx
tcp LISTEN 0 128 *:80 *:* users:(("nginx",pid=25787,fd=6),("nginx",pid=25662,fd=6))
tcp LISTEN 0 128 *:85 *:* users:(("nginx",pid=25787,fd=12),("nginx",pid=25662,fd=12))
# 连接验证;
[root@kazihuo ~]# mysql -uroot -p123123 -hlocalhost -P85
========================================
转载请保留此段声明,且在文章页面明显位置给出原文链接,谢谢!
==============================================================================
^_^ 如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,您的“推荐”将是我最大的写作动力 ^_^
==============================================================================