如何在服务器上执行mongodump并使用golang将其传输到本地计算机?

时间:2017-08-02 03:24:56

标签: mongodb go ssh portforwarding mgo

我编写了一个go程序(基本上就是这个例子中的代码,Simple SSH port forward in Golang),通过创建ssh隧道连接到远程mongodb服务器。我可以使用mgo api查询服务器。现在,我不是每次都查询服务器,而是希望将数据库的一些集合复制到本地计算机并在本地查询。请注意,由于涉及端口转发,我无法将其直接复制到本地计算机。我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:1)

你正在重新发明轮子。使用cron创建到目标的ssh隧道,然后使用本地mongodump连接到本地隧道端点

ssh -f user@mongodb.example.com -L 27017:mongodb.example.com:27017 -N
mongodump localhost:27017 <your opts here>