mongodb-连接到测试挂起和 mongo shell 未启动

标签 mongodb windows-7-x64 mongo-shell

我正在尝试在新安装的 windows7 操作系统和 cygwin 上运行 mongodb (2.2.6 shell)。

-我从 mongodb 网站下载了 2.2.6 版本,解压到 C: 并创建了具有写权限的文件夹 C:\data\db。 现在,我启动 cygwin 并 CD 到 bin 文件夹并运行 ./mongod.exe,一切正常,日志显示它正在等待 27017 上的连接

$ ./mongod.exe
C:\mongodb-win32-x86_64-2008plus-2.2.6\bin\mongod.exe --help for help and startup options
Mon Nov 11 16:50:32 [initandlisten] MongoDB starting : pid=3748 port=27017 dbpath=\data\db\ 64-bit host=E7F0921C5EBD33
Mon Nov 11 16:50:32 [initandlisten] db version v2.2.6, pdfile version 4.5
Mon Nov 11 16:50:32 [initandlisten] git version: d626379119a6de9f2fb390780cf2fc336dfd540d
Mon Nov 11 16:50:32 [initandlisten] build info: windows sys.getwindowsversion(major=6, minor=1, build=7601, platform=2, service_pack='Service Pack 1') BOOST_LIB_VERSION=1_49
Mon Nov 11 16:50:32 [initandlisten] options: {}
Mon Nov 11 16:50:32 [initandlisten] journal dir=/data/db/journal
Mon Nov 11 16:50:32 [initandlisten] recover begin
Mon Nov 11 16:50:32 [initandlisten] info no lsn file in journal/ directory
Mon Nov 11 16:50:32 [initandlisten] recover lsn: 0
Mon Nov 11 16:50:32 [initandlisten] recover /data/db/journal/j._0
Mon Nov 11 16:50:32 [initandlisten] recover cleaning up
Mon Nov 11 16:50:32 [initandlisten] removeJournalFiles
Mon Nov 11 16:50:32 [initandlisten] recover done
Mon Nov 11 16:50:32 [initandlisten] waiting for connections on port 27017
Mon Nov 11 16:50:32 [websvr] admin web console waiting for connections on port 28017

我现在打开另一个 cygwin 窗口并 cd 到 bin 文件夹并运行 ./mongo 以启动 monogodb shell。 mongod日志显示收到请求,连接打开

Mon Nov 11 16:50:55 [initandlisten] connection accepted from 127.0.0.1:53143 #1 (1 connection now open)

但是mongodb shell窗口在连接到测试数据库时挂起,并且出现了shell提示符。

$ ./mongo
MongoDB shell version: 2.2.6
connecting to: test

我检查了下面,进程正在运行,端口也打开了。

$  ps -ef | grep mongo
 user     860    5556 pty0     10:50:32 /cygdrive/c/mongodb-win32-x86_64-2008                             plus-2.2.6/bin/mongod
 user    6500    5680 pty1     10:50:55 /cygdrive/c/mongodb-win32-x86_64-2008                             plus-2.2.6/bin/mongo


$ netstat -ano | findstr 27017
  TCP    0.0.0.0:27017          0.0.0.0:0              LISTENING       3748
  TCP    127.0.0.1:27017        127.0.0.1:53143        ESTABLISHED     3748
  TCP    127.0.0.1:53143        127.0.0.1:27017        ESTABLISHED     580

我还检查了 http://localhost:28017/ 并且可以看到它正在运行。

db version v2.2.6, pdfile version 4.5
git hash: d626379119a6de9f2fb390780cf2fc336dfd540d
sys info: windows sys.getwindowsversion(major=6, minor=1, build=7601, platform=2, service_pack='Service Pack 1') BOOST_LIB_VERSION=1_49
uptime: 2153 seconds

为了进行故障排除,我验证了 C:\data\db 文件夹的写入权限已启用,删除了 mongod.lock 文件并尝试使用修复选项重新启动,它提供了帮助,删除了所有 mongodb 文件夹,重新启动计算机并安装了新副本,但是还是有同样的问题

关于为什么会发生这种情况以及如何解决它的任何想法?

最佳答案

已知 MongoDB 的 shell 不能在 cygwin 中工作:

https://jira.mongodb.org/browse/SERVER-4423

请在没有 cygwin 的情况下正常运行 mongod.exe(服务器)和 mongo.exe(shell)。

关于mongodb-连接到测试挂起和 mongo shell 未启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19912435/

相关文章:

mongodb - 如何使用mongoengine在EmbeddedDocument中定义objectid?

environment-variables - 通过重命名文件夹方法轻松更改Conda环境(在Win7 64中)?可以接受吗?

c++ - D3D11CreateDeviceAndSwapChain 未解析的外部

javascript - 获取 mongo shell BinData 作为字符串

mongodb - 有没有办法一起链接到 Meteor.Collections() ?

mongodb - 过滤子文档数组

c++ - 带有 HKEY_LOCAL_MACHINE 的 RegOpenKeyExW 在 Windows Embedded 7 64 位上返回 2

node.js - MongoServerSelectionError:连接 ECONNREFUSED::1:27017

mongodb - 默认在 MongoDB shell 中打印漂亮

python - 将压缩的 csv 导入 mongo 集合时优化 python 代码性能