从 Tableau Desktop 到 postgres 的 SSH 隧道 - 用户名和密码无效

Posted

技术标签:

【中文标题】从 Tableau Desktop 到 postgres 的 SSH 隧道 - 用户名和密码无效【英文标题】:SSH tunnel to postgres from Tableau desktop - invalid username and password 【发布时间】:2014-11-25 10:54:36 【问题描述】:

我正在尝试使用 SSH 隧道将 Tableau 连接到 postgres 数据库。我采取的步骤是

    在我的桌面上安装 postgres 驱动程序(32 位) 在putty中创建隧道(隧道L5432 127.0.0.1:5432)并打开终端 在这个会话中,我可以从命令行 psql -d mydb -U myuser 运行 Postgres 但是,在尝试使用 Tableau 进行连接时,我收到错误消息“无效的用户名和密码” 如果我尝试连接到不存在的数据库,我会收到相同的错误消息“无效的用户名和密码”

我还创建了一个具有超级用户权限的 psql 用户,但没有成功。注意 ssh 隧道和 psql db 的用户名是不同的。

我在论坛上看到很多帖子都没有解决办法。

有人可以帮忙吗?谢谢。

罗杰

【问题讨论】:

如果隧道的用户和数据库的用户相同,它是否工作? 解决了这个问题 - 必须创建两个隧道。 postgres 数据库限制了 list_addresses。第一个隧道让我到了盒子,第二个允许的 sql 查询! 【参考方案1】:

我遇到了同样的问题,略有不同,我没有使用 PuTTY,而是使用 Cygwin Autossh。

答案是需要建立两条隧道,首先是从本地主机到服务器的 ssh 隧道,然后是从服务器端口到数据库端口。一个可能的解决方案是像这样设置 ssh 隧道: 5432:localhost:5432 用户名@hostserverdomain

第一个 5432 是本地端口(Tableau 或 PGAdmin),第二个 localhost 实际上是指服务器(因为一旦登录 localhost 就意味着服务器本身),第二个 5432 是服务器上的数据库。为了访问数据库,必须登录服务器。 以上只是使用 ssh 连接两个隧道的语法。

一开始我不明白 Roger 所说的两条隧道是什么意思,然后我研究了底层的方法,最后完成了所有的设置工作。谢谢罗杰!

【讨论】:

以上是关于从 Tableau Desktop 到 postgres 的 SSH 隧道 - 用户名和密码无效的主要内容,如果未能解决你的问题,请参考以下文章

如何从 SQL Server 或 Tableau Desktop 加载临时表?

Tableau——DeskTop 1.0(Tableau的简单介绍)

Tableau Desktop 企业日常问题28Tableau 如何发布到public ?

怎么用tableau desktop

Tableau Desktop 企业日常问题29Tableau desktop 更换电脑的时候 迁移License

Tableau Desktop 企业日常问题29Tableau desktop 更换电脑的时候 迁移License