关闭

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

2083人阅读 评论(0) 收藏 举报
分类:

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


1 架构如下



架构说明

  线上数据库,只授权了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连接



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


1
0

猜你在找
【直播】机器学习&数据挖掘7周实训--韦玮
【套餐】系统集成项目管理工程师顺利通关--徐朋
【直播】3小时掌握Docker最佳实战-徐西宁
【套餐】机器学习系列套餐(算法+实战)--唐宇迪
【直播】计算机视觉原理及实战--屈教授
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之矩阵--黄博士
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之凸优化--马博士
【套餐】Javascript 设计模式实战--曾亮
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:384181次
    • 积分:5419
    • 等级:
    • 排名:第4920名
    • 原创:152篇
    • 转载:6篇
    • 译文:0篇
    • 评论:107条
    推荐微信公众号:PHP专家

             PHP专家(phpexpert)。我们一起成为PHP专家!


    博客专栏
    最新评论