mysql-proxy 配置代理服务器访问内网数据库

本文介绍了如何使用mysql-proxy在开发机上搭建代理服务器,以允许本地机器通过开发机访问内网中的数据库服务。详细步骤包括下载并安装mysql-proxy,配置环境变量,创建配置文件,以及在开发机的mysql客户端中设置相应用户和权限。最后,验证mysql-proxy服务已成功启动并能实现本地连接。

配置搭理服务器原理

假设此时存在内网机器部署内网数据库服务: 10.10.0.1 此时开发机ip 10.10.0.2 本地机器172.16.10.10 我们的目的是通过本地机器访问内网数据库, 但是这个是不被允许的, 我们只能通过开发机来访问数据库, 因此 我们需要再开发机上搭建一个mysql-proxy(这个比较老, 也可以用mysql route 原理相似配置不同), 这样本机就可以通过访问开发机来访问内网数据库.

搭建流程

  • 安装mysql服务 (保证数据库服务可用) -> 这部分暂时不介绍

  • 安装mysql-proxy

    1. https://downloads.mysql.com/archives/proxy/ 下载 mysql-proxy-0.8.5-linux-glibc2.3-x86-64bit.tar.gz
    2. 解压 & 配置bin目录到环境变量
    # 解压
    tar zxvf mysql-proxy-0.8.5-linux-glibc2.3-x86-64bit.tar.gz
    # 配置环境变量
    vim ~/.bash_profile
    # 配置
    MYSQL_PROXY_HOME=bin目录
    export PATH=MYSQL_PROXY_HOME:$PATH
    
    1. 在mysql-proxy目录下新建conf目录, 并建立对应配置文件
    mkdir conf
    cd conf
    vim mysql-proxy-test.cnf
    
    # 配置如下
    [mysql-proxy]
    admin-username=root #开发机mysql客户端账户
    admin-password=root #开发机mysql客户端密码
    admin-lua-script=/usr/lib64/mysql-proxy/lua/admin.lua # mysql-proxy --version可以查看这个目录
    
    proxy-address=10.10.0.2:8998 # 开发机代理端口
    #proxy-read-only-backend-addresses=10.61.173.54:3540
    #proxy-backend-addresses=10.61.173.54:3540
    proxy-backend-addresses=10.10.0.1:3306 # 代理的数据端口
    
    log-file=/var/log/mysql-proxy.log #随意
    log-level=debug #随意
    daemon=true # 保持mysql-proxy 后台运行
    keepalive=true
    user=mysql-proxy
    
    # 配置文件权限
    chmod 600 mysql-proxy-test.cnf
    
    1. 开发机mysql客户端 新建用户 保证你要代理的数据库账户密码在开发机mysql都存在, 比如内网数据库账户123asd 密码1238765 即: 你需要在开发机mysql客户端新建一个用户 名为123asd 密码是1238765
    2. 执行命令开启mysql-proxy mysql-proxy --dafaults-file=mysql-proxy-test.cnf
    3. 查看时候已经开启服务
    ps -ef | grep mysql-proxy
    

在这里插入图片描述
看到如下进程, 说明服务已经启动

  • 本地连接验证 用本地机器连接mysql测试

    mysql -h10.10.0.2 -P8998 -u123asd -p1238765

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值