外网访问内网MySQL数据库(阿里云QuickBI+花生壳内网穿透)
贝锐 | 2021-09-14
几年前,西子湖畔的马老师说过: “地球人正从IT时代走向DT时代” ,如今愈演愈烈的大数据浪潮已席卷各行各业, 不得不服大佬的眼光和格局就是犀利。
DT时代,一款好的BI工具,是帮助企业降本增效、赋能业务快速增长的利器。
BI工具除了久负盛名的Tableau、PowerBI,国产的阿里云QuickBI(也是马老师家的)是一个冉冉升起的BI新星,
在Gartner发布的2021年商业智能和分析平台魔力象限报告(《Magic Quadrant for Analytics and Business Intelligence Platforms》),阿里云Quick BI再度入选,并继续成为该领域唯一进入魔力象限的中国企业。
个人实际体验下来,该BI好用不贵,值得拥有,推荐有BI工具需求的朋友不妨一试。
然后在有些情况下,我们需要QuickBI连接内网数据库,但QuickBI默认是不支持连接本地数据库的。
这时我想到了花生壳这款内网穿透神器,可以利用他实现需求,具体步骤见下。
(1)进入花生壳官网下载页面,注册账号并点击“免费下载”即可下载客户端下载请戳我。
(2)安装并运行花生壳客户端,在【内网穿透】界面中点击\<+> 按钮。
(3)跳转至花生壳管理平台进行填写新增映射信息:
选项 | 描述 |
---|---|
应用名称 | 自定义,一般写个有含义的名称 |
应用图标 | 可以给对应的服务选择一个图标,方便区分 |
映射类型 | 选择TCP |
外网域名 | 选择账号下的壳域名作为外网访问地址 |
外网端口 | 选择动态端口 |
内网主机 | 填写服务器的局域网IP地址 |
内网端口 | 3306(若内网数据库为SqlServer则是1433) |
访问控制 | 设置在指定条件下才可访问映射 , 提升应用安全 |
针对网页类映射可支持设置访问密码 | |
带宽 | 默认根据账号等级分配相应的带宽,也可根据实际需求额外付费购买 |
夜间带宽 | 18:00-次日8:00带宽速度提升100%,速度不低于5Mbps;带宽基数越大,夜间越快 |
确认映射内容填写无误,点击\<确定> 即可。
添加后的映射如图所示,注意右侧的诊断信息,若诊断信息为“连接成功”,则表示映射添加正确,否则需要检查内网数据库服务器的IP、端口是否填写正确,或者内网数据库服务器本身存在异常。
「注意」
记住这里的域名IP地址指向,接下来就通过它作为QuickBI的mysql数据源连接地址。
去阿里云QuickBI注册账号,首次使用,可免费白嫖一个月。
注册后,我们进入QuickBI的工作空间,依次选择右上角新建数据源-->自建数据源-->MySQL
配置MySQL数据源如下,配置好后,点击“连接测试”,若出现数据源连通性正常,则表明配置正确。
显示名称: 自定义
数据库地址(重要): 一定得是花生壳映射域名的IP地址,比如我这里是xxx.xxx.77.124
端口(重要):一定得是花生壳映射的外网端口,比如我这里是 24954
数据库: 自己内网数据库名称
用户: 自己内网数据库用户名
密码: 自己内网数据库密码
阿里云QuickBI官方帮助文档点这里,官网帮助文档做的很详细,这里就不再赘述仪表板制作流程了。
利用我内网的测试数据集,搭建个简单仪表板demo如下。(这份数据集来源于极客时间陈旸老师《SQL必知必会》的王者荣耀英雄数据集,如有需要,大家可从https://github.com/cystanford/sql_heros_data下载数据集)