首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从R识别并关闭SSH隧道

从R识别并关闭SSH隧道
EN

Stack Overflow用户
提问于 2016-02-24 11:51:33
回答 2查看 2.4K关注 0票数 3

我需要在R中连接到使用SSH隧道的DB。基于googling,所以告诉我我是必须首先创建一个SSH隧道,然后连接到我的DB,但是在执行我的SQL之后,如何安全地关闭隧道几乎没有什么意义。

示例:

代码语言:javascript
复制
if(!require(RPostgreSQL)) install.packages("RPostgreSQL")

# Create tunnel
myssh<-"ssh -f <server_user>@<server_ip>  -L <unused_local_port>:localhost:<database_remote_port> -N"
system(myssh)

# Connect to DB
drv  <- dbDriver("PostgreSQL")
conn <- dbConnect(
  drv,
  host = "127.0.0.1", user = "postgres",
  password = "", dbname = "mydb",
)

# How to close tunnel?

如何正确检测和关闭R?创建的SSH隧道

PS我在Windows上!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-02-24 13:39:25

我在自动封闭SSH隧道上找到了一篇很好的文章--它建议使用这样的代码来连接:

代码语言:javascript
复制
ssh -f -L 3306:127.0.0.1:3306 me@remote.example.org sleep 10;

它使用的特性是ssh在使用时不会关闭连接。它将首先等待10s -如果连接被使用,则在连接完成后关闭该连接。

票数 4
EN

Stack Overflow用户

发布于 2016-02-24 12:05:38

在Mac和Linux上,您可以像其他任何背景ssh连接一样关闭它:

代码语言:javascript
复制
ps -ef | grep ssh

然后

代码语言:javascript
复制
kill -9 pid

我不知道窗户上有没有ps

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

https://stackoverflow.com/questions/35601426

复制
相关文章

相似问题

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