当前位置: 代码迷 >> 综合 >> Tableau Desktop连接MongoDB
  详细解决方案

Tableau Desktop连接MongoDB

热度:57   发布时间:2023-12-15 17:28:22.0

目录

 

1.下载并安装驱动程序

2.安装mongodb-bi

3.生成DRDL 文件

4.启动mongodbsqld

5.连接


1.下载并安装驱动程序

tableau官方连接教程:

https://help.tableau.com/current/pro/desktop/en-us/examples_mongodb.htm

https://help.tableau.com/v2018.2/pro/desktop/zh-cn/examples_mongodb.html(中文)

驱动程序下载:

https://www.tableau.com/zh-cn/support/drivers?edition=unlicensed&lang=zh-cn&platform=windows&cpu=64&version=2019.2&__full-version=20192.19.0506.2105#

下载mysql-connector-odbc


 

2.安装mongodb-bi

官网地址:https://www.mongodb.com/products/bi-connector

它目前包含两个组件:

  1. mongosqld:mongosqld接受来自SQL客户端的传入请求,并将这些请求代理到mongod或mongos实例。
  2. mongodrdl: 根据一个或多个MongoDB的集合(collection,类似于表),生成一个Schema,交将它写入.drdl文件中

安装包下载地址:https://www.mongodb.com/download-center#bi-connector,可以下载不同系统平台的安装包

windows:

在这一步可以修改路径 

 

安装完成后,安装目录的文件,里面会有两个可执行文件,mongosqld.exe和mongodrdl.exe,分别对应它两个组件mongosqld和mongodrdl

3.生成DRDL 文件

为什么要先配置mongodrdl:
mongodrdl 生成数据库模式信息以用于BI的MongoDB连接器。
mongosqld 代理SQL客户端和MongoDB服务器之间的传入查询

mongodrdl

命令行参数参考官网地址:https://docs.mongodb.com/bi-connector/current/reference/mongodrdl/
这个是mongodb对应的api。


mongodrdl –>安装目录下bin里,cmd到这里,然后进行命令配置:
–host <:port>, -h <:port>
默认值:localhost:27017
–verbose , -v
指定mongodrdl应提供更详细的日志输出。包含多次以获得更多详细信息(例如-vvvvv)或指定数值(例如–verbose=5)。
–db , -d
指定从中生成.drdl模式文件的数据库。

–collection , -c
指定从中生成.drdl模式文件的集合。如果您未指定集合,则此选项将使用指定数据库或实例中的所有集合。
–out , -o
生成后缀为.drdl的文件
–username , -u
指定一个用户名,用于向使用验证的MongoDB数据库进行身份验证。与–password和 –authenticationDatabase选项一起使用。

–password , -p
指定一个用来验证使用验证的MongoDB数据库的密码。与–username和 –authenticationDatabase选项一起使用。
–authenticationDatabase
 

mongodrdl --host 127.0.0.1:27017 --db dbUser --authenticationDatabase dbUser --out schema.drdl

生成如下DRDL文件: 

4.启动mongodbsqld

mongosqld --schema schema.drdl

如果你的MongoDB设置了密码:

mongosqld --schema schema.drdl --mongo-uri localhost:27017 --mongo-username yourusername --mongo-password yourpassword --auth [--addr 0.0.0.0:3307]

5.连接

然后就能继续在tableau desktop 操作了,但是需要注意。mongodrdl 不能设置db 和authenticationDatabase为admin

注意事项
    1:安装的BI 要与mongoserver数据库在同一台机子上

    2:BI的配置文件将bindIp 修改为0.0.0.0

   3: 生成drdl的时候  如果mongo数据库有身份权限验证 不能使用管理员生成文件 要用普通用户 角色为dbOwer

  4: 启动mongosqd的时候会默认加载example-mongosqld-config.yml配置文件  需要修改配置选项在里面修改即可
 

 

  相关解决方案