使用 Tableau ODBC 和 SSL 连接到 Heroku PostgreSQL

问题描述 投票:0回答:1

我正在尝试通过 Tableau 和 ODBC 连接到我的 Heroku PostgreSQL 数据库,这需要通过 ODBC,因为它需要 SSL 连接。话虽这么说,我已经配置了一个

User DSN
。我遵循了此博客中的一些步骤。

  1. 首先,我运行此命令来安装驱动程序:
brew install psqlodbc
  1. 我编辑了我的
    /usr/local/etc/odbcinst.ini
    文件:
[PostgreSQL Unicode]
Description = PostgreSQL ODBC driver (Unicode version)
Driver      = /usr/local/lib/psqlodbcw.so
  1. 我编辑了我的
    odbc.ini
nano ~/.odbc.ini 
[ib3db]
Driver      = PostgreSQL Unicode
Description = None
SSLMODE     = verify-ca
ServerName  = <host>
Database    = <db_name>
Port        = 5432
Username    = <username>
Password    = <pwd>
Pqopt       = sslcert=<.crt> sslkey=<.key> sslrootcert=<.crt>

我在终端中对此进行了测试,工作正常,我能够成功连接到我的数据库。所以,配置似乎是正确的。

当我尝试通过 Tableau 连接时出现问题。选择

To a Server > ODBC > DSN
后,我选择之前创建的名为
ib3db
的 DSN,然后出现以下错误:

[iODBC][驱动程序管理器]dlopen(PostgreSQL Unicode, 0x0006): 尝试: 'PostgreSQL Unicode' (强化程序中不允许相对路径), '/System/Volumes/Preboot/Cryptexes/OSPostgreSQL Unicode' (没有这样的文件) , '/Applications/Tableau Desktop 2024.3.app/Contents/MacOS/PostgreSQL Unicode'(没有此类文件), '/Applications/Tableau Desktop 2024.3.app/Contents/MacOS/PostgreSQL Unicode'(没有此类文件)、'/Applications/Tableau Desktop 2024.3.app/Contents/MacOS/PostgreSQL Unicode'(没有此类文件)、'/Applications/画面 [iODBC][驱动程序管理器]无法加载指定的驱动程序 通用 ODBC 需要额外的配置。必须安装并配置驱动程序和 DSN(数据源名称)以匹配连接。

我是否需要重命名之前安装的驱动程序以匹配 Tableau 正在查找的路径?

如何告诉 Tableau 转到正确的路径来查找我已安装的驱动程序?

postgresql unicode odbc heroku-postgres tableau-desktop
1个回答
0
投票

我最终使用了 JDBC 驱动程序。对于任何想知道的人,您还可以使用 JDBC 通过 SSL 进行连接。

首先您需要安装驱动程序

然后你需要建立URL连接,如:

jdbc:postgresql://<hostname>:5432/<database_name>?ssl=true&sslmode=verify-ca&sslcert=<path_to_cert>&sslkey=<path_to_pk8>&sslrootcert=<path_to_crt>

之后,您就完成了设置,您只需要输入用户名和密码,连接就应该没有问题。

不要忘记更改密钥的权限:

chmod 0600 ...
© www.soinside.com 2019 - 2024. All rights reserved.