排行榜

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

本文阅读 1 分钟
首页 后端开发 正文
广告

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

1. 架构如下5b88d2ba35933ab9ac193e729115e291.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.loglog-level = debug
max-open-files = 1024plugins = 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:4041admin-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连接

bd69c0642259fe0e11414126a3ce9494.png

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

本文经授权后发布,本文观点不代表立场,文章出自:https://blog.csdn.net/clevercode/article/details/52355954
Typecho 开启伪静态操作步骤
« 上一篇 07-18
Redis 起步,环境搭建和基础使用
下一篇 » 07-18
广告

相关推荐