V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
MySQL 5.5 Community Server
MySQL 5.6 Community Server
Percona Configuration Wizard
XtraBackup 搭建主从复制
Great Sites on MySQL
Percona
MySQL Performance Blog
Severalnines
推荐管理工具
Sequel Pro
phpMyAdmin
推荐书目
MySQL Cookbook
MySQL 相关项目
MariaDB
Drizzle
参考文档
http://mysql-python.sourceforge.net/MySQLdb.html
FormatToday
V2EX  ›  MySQL

关于阿里云 mysql 无外网 ip 的连接问题

  •  
  •   FormatToday ·
    FormatToday · 224 天前 · 2826 次点击
    这是一个创建于 224 天前的主题,其中的信息可能已经有所发展或是发生改变。

    现在公司的测试 mysql 用的是阿里云,没有公网 ip ,只有内网地址。 用 navicat 等客户端连接的时候,需要添加 ssh 隧道(连接一个阿里云的测试服务器,这个服务器有外网 ip )。 现在开发的时候需要直接连上这个 mysql ,SpringBoot 使用 ssh 隧道连接的话会比较麻烦,请问有什么更优雅的方式让开发都可以连上这个 mysql 使用吗。

    第 1 条附言  ·  224 天前
    感谢各位大佬提供的方法,申请公网 ip 不允许,其他的方式我抽空一一试试再过来回复大家。
    29 条回复    2022-02-25 22:05:00 +08:00
    dier
        1
    dier  
       224 天前
    在公司一台固定的机器上用 SSH 隧道连接,然后公司所有要连接的客户端全连接这台机器的 IP+port
    keylock
        2
    keylock  
       224 天前
    Illusionary
        3
    Illusionary  
       224 天前
    公司路由器配置 ipsec 和阿里云打通内网
    viberconnection
        4
    viberconnection  
       224 天前 via Android
    在雲服務商內網任意一台伺服器裝 TAILSCALE ,然後設置一條去往其內網 MYSQL 的子網路由,其他人都安裝 TAILSCALE 並加入同一內網就可以連線啦。默認情形下只有需要的傳輸才會進入伺服器,不會路由所有傳輸。
    Maco
        5
    Maco  
       224 天前
    Morii
        6
    Morii  
       224 天前   ❤️ 1
    一个命令的事儿

    ssh -CNL 3306:host:3306 [email protected]


    不需要的时候 ctrl + c 就关闭
    Morii
        7
    Morii  
       224 天前
    @Maco #5

    有些公司的 ops 不允许申请
    wxdiy
        8
    wxdiy  
       224 天前
    主机上安装个 mysql-proxy 可以吧
    newbeelity
        9
    newbeelity  
       224 天前
    DMS ,合规、有审计
    salmon5
        10
    salmon5  
       224 天前
    vpn ,libreswan/openvpn/wireguard 都可以,or 阿里云 VPN 网关
    killva4624
        11
    killva4624  
       224 天前
    - 不允许申请公网 IP 的原因是什么?
    申请公网 IP ,然后白名单只写公司公网出口 IP ,不也是一个不错的方法么。
    如果开发需要在家访问的话,走 VPN 先回到公司,再走公司出口访问。
    notejava
        12
    notejava  
       224 天前
    申请公网 ip ,然后加白名单就足够安全了吧。
    koloonps
        13
    koloonps  
       224 天前
    Windows SSH 代理下
    koloonps
        14
    koloonps  
       224 天前
    virlaser
        15
    virlaser  
       224 天前
    MobaXterm -> Tunneling -> MobaSSHTunnel 带界面的端口转发工具,用起来顺手一点
    onhao
        16
    onhao  
       224 天前
    一般人我不告诉他:
    mysqlworkbench
    通过 ssh 来连接,然后就可以内网登录了。
    https://wuhao.pw/archives/291/
    ruanimal
        17
    ruanimal  
       224 天前
    在测试机上装 haproxy ,或者在本机开 ssh tunnel
    newbeelity
        18
    newbeelity  
       224 天前
    DMS ,合规、有审计
    dayeye2006199
        19
    dayeye2006199  
       224 天前
    你需要一个 VPN 网关打通办公网络到 vpc 的链接。这个比跳板机等方法更加的安全。
    onhao
        20
    onhao  
       224 天前
    用 tsocks
    https://wuhao.pw/archives/299/
    完美解决
    onhao
        21
    onhao  
       224 天前
    sorry ,回复错了,我是回复这个的 https://www.v2ex.com/t/783267
    joesonw
        22
    joesonw  
       224 天前
    这部正是 VPN 正确的使用场景吗? 而且 VPN 可以限制每个用户可访问的网段, 对于只需要 MySQL 的, 只需要开这个 ip 就好了.
    keyfunc
        23
    keyfunc  
       224 天前
    租阿里云的 vpn ,然后让网络部门在内网映射好,另外我想问的是开发时为什么要连测试的数据库。。。
    brader
        24
    brader  
       224 天前
    用 6#的方法就行,如果公司本地有服务器,就驻后台一直挂着,如果没有,就自己电脑开,也不用装软件,打开你的 git bash ,就支持 ssh 协议,直接自己起个 ssh 隧道
    brader
        25
    brader  
       224 天前
    @keyfunc 正常的,我们团队也是这个场景,我们测试库也是上云的,然后开发、测试要协作,大家都是连的云测试库,因为是老项目,数据表非常大、多,不可能有新人进来每次都让他自己部署。
    第二点就是,我们有时候要在家办公,不上云不行。
    3kkkk
        26
    3kkkk  
       224 天前
    为什么不本地环境装一个 mysql ?有什么需要非要上云测试的需求吗?
    akira
        27
    akira  
       224 天前
    原则上 是不允许开发直连生产数据库的,更何况是本地的程序直连。

    不要嫌麻烦,这些都是前辈们血的教训的来的。
    RX2019
        28
    RX2019  
       224 天前
    @akira #27 认真审题,测试环境。。
    ClericPy
        29
    ClericPy  
       224 天前
    VPN 是正经出路, 早架早享受, 隧道用久了感觉太扯淡了
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2152 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 47ms · UTC 15:43 · PVG 23:43 · LAX 08:43 · JFK 11:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.