首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在R中使用ssh隧道连接到数据库PostSQL

在R中使用ssh隧道连接到数据库PostSQL
EN

Stack Overflow用户
提问于 2017-11-10 19:08:18
回答 1查看 1.6K关注 0票数 1

目的是利用SSH隧道将RPostgreSQL连接起来。

刚刚对库RPostgreSQLDBI的尝试失败了。我没有找到传递SSH隧道参数(代理主机、代理用户和私钥)的方法。

我想知道是否有一种方法可以在db查询字符串中指定那些SSH参数?或者另一条出路?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-11 02:26:11

下面是我使用过的代码示例:

首先,设置一个ssh隧道-这将是一个AWS EC2实例:

代码语言:javascript
复制
ssh -i 'YOURKEY.pem' -N -L 1234:YOURDATABASEHOST:5432 YOURUSER@YOURAWSINSTANCE

然后在R:

代码语言:javascript
复制
library(RPostgreSQL)

conn <- dbConnect(RPostgreSQL::PostgreSQL(), dbname = 'MYREMOTEDBNAME', host = '127.0.0.1', port = 1234, password = 'MYREMOTEPASSWORD', user = 'MYREMOTEUSER')

如您所见,关键是在某种远程实例和远程数据库之间设置一个隧道。然后使用这个本地托管的隧道(因此,127.0.0.1作为主机)和指定的端口(本例中为1234)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47229605

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档