|
mongodb bi-connector 是一个方便的mongodb 2 sql 工具,我们可以使用sql 的强大查询能力,分析mongo的数据,以下是一些
简单操作,以及一些部署上的细节说明,后边会介绍spring boot 集成的说明
安装
为了方便测试使用本地docker 运行mongo+ 使用本地mongodb bi-connector
参考以下地址安装 https://www.mongodb.com/download-center/bi-connector
mongo 环境准备
添加了一个pgspider:mongo pg 的fdw
配置说明
下载好的软件包里边有三个文件(可能是两个)一个生成schema 的一个是sql 运行服务,一个是sql 到mongo
聚合查询生成的,我们使用静态配置方式,同时因为添加了用户密码,所以需要tls 证书(使用了宽松模式)
- 连接
注意部分工具可能使用了mysql jdbc 8 以及一些高版本的连接会有问题
对于连接因为使用了ssl,需要使用工具需要勾选ssl,同时对于mysql cli 需要添加--enable-cleartext-plugin ,同时需要注意如果代码连接也需要配置
几个问题
- ssl 问题
这个问题也是网上大家都反馈比较多的, 尽管net配置中可以ssl disable,但是没有效果(这个是使用密码关系,属于工具的一个强制策略)
尽管有人说只能本地运行,这是不对的,碰到问题最好还是多看看官方文档,这样会少点折腾
- 代码连接问题
spring jdbc 配置,这个后边会有介绍使用的,关于nodejs 的集成就很不好了,好多对于ssl 的支持一般,后边也有介绍
- 关于mysql fdw 的集成问题
这个测试没用通过(mysql 协议支持的问题,当然修改fdw 代码,让只支持查询,应能是可行的,后边尝试下),如果真的需要
集成推荐使用mongo 的fdw(这个更靠谱稳定)
- 实际生成的mongo 查询
这个我们可以通过mongotranslate 工具,以及sql 的查询计划任务看出来,以下是sql 查询分析的
- linux systemd 启动文件
mongosqld 命令行支持包含了使用系统服务管理的命令,可以快速帮助我们生成系统级别的服务管理脚本,如下是centos 的一个
目录:/etc/systemd/system/mongosql.service 方便大家学习
参考资料
https://docs.mongodb.com/bi-connector/master/reference/mongosqld/#bin.mongosqld
https://www.mongodb.com/download-center/bi-connector
https://docs.mongodb.com/bi-connector/master/release-notes/
来源:https://www.cnblogs.com/rongfengliang/p/12313132.html |