我正在尝试将数据导入我托管在云上的mongodb sevrer。
我从公司防火墙内的linux服务器运行以下命令:
mongoimport --host myhost:10081 --db mydb -u myusr -p mypass --collection imptest --file test.dat --drop --stopOnError
导入开始运行,成功连接到远程mongod,创建一个数据记录(检查我的数据库),然后直接挂起,没有错误消息。
我很确定这是因为某些防火墙设置会阻止从mongo服务器返回通信 - 当我从防火墙外部做同样的事情时,它可以完美地工作。 我可以让mongoimport使用更乐观的WriteConcern,而不是等待ack吗?或者更好的是,我怎样才能找出被阻止的端口给我带来麻烦?
答案 0 :(得分:1)
我假设有一些端口肯定是开放的,比如22用于SSH。您可以尝试从防火墙内部到基于云的服务器设置SSH隧道。然后,您需要通过SSH隧道转发mongoDB端口上的连接。