nginx tcp代理mysql_Nginx 代理 TCP协议 MySQL连接

使用nginx代理mysql连接有个好处就是,如果做了容灾处理的话, 可以瞬间平滑切换到可用服务上。

1. vi /etc/nginx/nginx.conf ,在 http{} 结构体外(也就是文件末尾)添加如下配置:

stream {

upstream cloudsocket {

hash $remote_addr consistent;

# $binary_remote_addr;

server192.168.182.155:3306 weight=5 max_fails=3 fail_timeout=30s;

}

server {

listen3306;#数据库服务器监听端口

proxy_connect_timeout 10s;

proxy_timeout 300s;#设置客户端和代理服务之间的超时时间,如果5分钟内没操作将自动断开。

proxy_pass cloudsocket;

}

}

2. cat /etc/nginx/nginx.conf ,内容如下:

worker_processes 1;

events {

worker_connections1024;

}

http {

include mime.types;

default_type application/octet-stream;

sendfile on;

server {

listen80;

server_name localhost;

#charset koi8-r;

#access_log logs/host.access.log main;

location/{

root html;

index index.html index.htm;

}

error_page500 502 503 504 /50x.html;

location= /50x.html {

root html;

}

}

}

stream {

upstream cloudsocket {

hash $remote_addr consistent;

# $binary_remote_addr;

server192.168.182.155:3306 weight=5 max_fails=3 fail_timeout=30s;

}

server {

listen3306;#数据库服务器监听端口

proxy_connect_timeout 10s;

proxy_timeout 300s;#设置客户端和代理服务之间的超时时间,如果5分钟内没操作将自动断开。

proxy_pass cloudsocket;

}

}

3. systemctl restart nginx ,重启nginx。

4.验证

登录192.168.182.156服务器执行看是否有3306端口的监听

[root@localhost sbin]# netstat -nap|grep 3306

tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 89870/nginx: master

用Navicat for MySQ工具测试是否能连接

1c50356f7607cae373c32573e872ae7c.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值