mysql proxy访问不了数据库_mysql-proxy解决只能内网访问线上数据库问题

CleverCode的线上数据库,只能通过内网连接到线上。每次都需要登录ssh终端上操作。为了操作方便在在内网开发机上装了一个mysql-proxy去访问线上数据库。

1 架构如下

0818b9ca8b590ca3270a3433284dd417.png

架构说明

线上数据库,只授权了192.168.1.*网段的用户能够访问线上数据库。其它网段都不能访问。

2 线上数据库创建用户

登录到192.168.2.101机器,创建一个授权用户。

# mysql -uclevercode -pc123456 -h 192.168.2.101 -P 3306

mysql>GRANT ALL PRIVILEGES ON *.* TO 'clevercode'@'192.168.1.*' IDENTIFIED BY 'c123456' WITH GRANT OPTION;

mysql>FLUSH RIVILEGES;

3  mysql-proxy安装与配置

3.1 安装

# yum list mysql-proxy

# yum -y install mysql-proxy

# service iptables stop

3.2 配置

vi /etc/mysql-proxy.cnf

[mysql-proxy]

daemon = true

pid-file = /var/run/mysql-proxy.pid

log-file = /var/log/mysql-proxy.log

log-level = debug

max-open-files = 1024

plugins = admin,proxy

user = mysql-proxy

#

#Proxy Configuration(代理开发机)

proxy-address = 192.168.1.101:3316

#线上数据库地址

proxy-backend-addresses = 192.168.2.101:3306

#proxy-read-only-backend-addresses =

#proxy-lua-script =

#proxy-skip-profiling = true

#

# Admin Configuration

#admin-address = 0.0.0.0:4041

admin-lua-script = /usr/lib64/mysql-proxy/lua/admin.lua

admin-username = admin

admin-password = admin

3.3 启动

# mysql-proxy --defaults-file=/etc/mysql-proxy.cnf

可以配置多个配置文件,来代理不同的线上数据库。

4 navicat连接

0818b9ca8b590ca3270a3433284dd417.png

只要自己的windows机器能够访问192.168.1.101的3316端口。msyql-proxy就能够代理到192.168.2.101的3306端口。这个密码要用线上数据库的密码。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值