nginx代理mysql连接

奇怪的知识又增加了

如题,目前情况为,只有一台机器A能连上数据,其他电脑想连接,如何做。

解决方案:

1,A机器安装nginx,安装步骤详见前面文章。

        注:安装步骤中需要修改一个地方,编译安装nginx的时候,./configure最后面需要加上

        --with-stream

        即:

echo "编译安装:nginx-"$nginx_version""
./configure --user=nobody --group=nobody --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_gzip_static_module --with-http_realip_module --with-http_sub_module --with-http_ssl_module --with-pcre=/usr/local/pcre-"$pcre_version" --with-zlib=/usr/local/zlib-"$zlib_version" --with-openssl=/usr/local/openssl-"$openssl_version" --with-stream 

             附:   nginx安装脚本

2,安装过程可能会失败,报错类似:Makefile:972:objs/src/http/ngx_http_script.o

解决方法,转自:Nginx在make时报错[objs/Makefile:469: objs/src/core/ngx_murmurhash.o] Error - 将来-小志 - 博客园

在安装目录下执行

vim obj/Markfile

把Makefile文件的-Werror去掉

重新执行make

 3,安装完成后,修改nginx.conf文件

 参考:nginx代理tcp协议连接mysql - 凉生墨客 - 博客园

增加steam配置,与http同级,不是放在http里面!!

stream {
	upstream jpaassocket {
		hash $remote_addr consistent;
		server 10.254.112.183:3306 weight=5 max_fails=3 fail_timeout=30s;
	}
	server {
		listen 9001;#数据库服务器监听端口
		proxy_connect_timeout 10s;
		proxy_pass jpaassocket;
	}
}

重启nginx即可,重启命令:进入/nginx/sbin/目录,执行  ./nginx -s reload  即可。

这样用机器B等的navicat连接即可:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值