无法使用pymongo 2.2连接到MongoDB 2.0.5数据库

无法使用pymongo 2.2连接到MongoDB 2.0.5数据库

问题描述:

我已经坚持诊断了几个小时,以为我会看看是否有任何pymongo专家有什么想法:

I've been stuck with diagnosing this for a few hours now and thought I'd see if any pymongo experts out there have any ideas:

下面的代码行:

connection = pymongo.Connection('localhost',27017)

connection = pymongo.Connection('localhost', 27017)

生成以下错误:

/usr/local/Cellar/python/2.7.3/bin/python2.7 / Users / danwilson / Dropbox / Projects / mysite / app.py

追溯(最近一次通话为最后一次):

文件 / Users / danwilson / Dropbox / Projects / mysite / app。 py,第149行,在

main()

文件 /Users/danwilson/Dropbox/Projects/mysite/app.py,第144行,在main

http_server = tornado.httpserver.HTTPServer(Application())

文件 /Users/danwilson/Dropbox/Projects/mysite/app.py,第54行,在 init

self.connection = pymongo.Connection('localhost',27017)

文件 /usr/local/Cellar/python/2.7。 3 / lib / python2.7 / site-packages / pymo ngo / connection.py,第290行,位于 init

self .__ find_node()

文件 / usr / local / Cellar / python中/2.7.3/lib/python2.7/site-packages/pymongo/connection.py,第586行,位于__find_node

中,请提高AutoReconnect(','.join(errors))

pymongo.errors.AutoReconnect:'module'对象没有属性'decode_all'

/usr/local/Cellar/python/2.7.3/bin/python2.7 /Users/danwilson/Dropbox/Projects/mysite/app.py
Traceback (most recent call last):
File "/Users/danwilson/Dropbox/Projects/mysite/app.py", line 149, in
main()
File "/Users/danwilson/Dropbox/Projects/mysite/app.py", line 144, in main
http_server = tornado.httpserver.HTTPServer(Application())
File "/Users/danwilson/Dropbox/Projects/mysite/app.py", line 54, in init
self.connection = pymongo.Connection('localhost', 27017)
File "/usr/local/Cellar/python/2.7.3/lib/python2.7/site-packages/pymongo/connection.py", line 290, in init
self.__find_node()
File "/usr/local/Cellar/python/2.7.3/lib/python2.7/site-packages/pymongo/connection.py", line 586, in __find_node
raise AutoReconnect(', '.join(errors))
pymongo.errors.AutoReconnect: 'module' object has no attribute 'decode_all'

mongod的流输出确认该连接:

My-MacBook-Pro:〜用户名$ mongod

mongod-帮助和启动选项的帮助

Tue May 15 07:53:50 [initandlisten] MongoDB开始:pid = 2277端口= 27017 dbpath = / data / db / 64位主机= My-MacBook-Pro.local

周二5月15日07:53:50 [initandlisten]数据库版本v2.0.5,pdfile版本4.5

周二5月15日07:53:50 [initandlisten] git版本:1bb4de4630302fad8af53824ca4f627db490b753

Tue May 15 07:53:50 [initandlisten]构建信息:Darwin erh2.10gen.cc 9.8.0 Darwin Kernel

版本9.8.0:Wed 2009年7月15日16:55:01 PDT; root:xnu-1228.15.4〜1 / RELEASE_I386 i386 BOOST_LIB_VERSION = 1_40

5月15日星期二07:53:50 [initandlisten]选项:{}

5月15日星期二:53:50 [initandlisten]日志dir = / data / db / journal

5月15日星期二07:53:50 [initandlisten]恢复:不存在日志文件,无需恢复

5月15日星期二07:53:50 [websvr]管理Web控制台等待端口28017上的连接

5月15日星期二07:53:50 [initandlisten]等待端口27017上的连接

星期二5月15日07:53:57 [initandlisten]从127.0.0.1:50263#1接受连接

星期二5月15日07:53:57 [conn1]结束连接127.0。 0.1:50263

My-MacBook-Pro:~ username$ mongod
mongod --help for help and startup options
Tue May 15 07:53:50 [initandlisten] MongoDB starting : pid=2277 port=27017 dbpath=/data/db/ 64-bit host=My-MacBook-Pro.local
Tue May 15 07:53:50 [initandlisten] db version v2.0.5, pdfile version 4.5
Tue May 15 07:53:50 [initandlisten] git version: 1bb4de4630302fad8af53824ca4f627db490b753
Tue May 15 07:53:50 [initandlisten] build info: Darwin erh2.10gen.cc 9.8.0 Darwin Kernel
Version 9.8.0: Wed Jul 15 16:55:01 PDT 2009; root:xnu-1228.15.4~1/RELEASE_I386 i386 BOOST_LIB_VERSION=1_40
Tue May 15 07:53:50 [initandlisten] options: {}
Tue May 15 07:53:50 [initandlisten] journal dir=/data/db/journal
Tue May 15 07:53:50 [initandlisten] recover : no journal files present, no recovery needed
Tue May 15 07:53:50 [websvr] admin web console waiting for connections on port 28017
Tue May 15 07:53:50 [initandlisten] waiting for connections on port 27017
Tue May 15 07:53:57 [initandlisten] connection accepted from 127.0.0.1:50263 #1
Tue May 15 07:53:57 [conn1] end connection 127.0.0.1:50263

软件包版本

My-MacBook- Pro:〜用户名$ pip冻结

PyYAML == 3.10

bson == 0.3.3

Distribution == 0.6.26

mimeparse == 0.1.3

pymongo == 2.2

python-dateutil == 2.1

pytz == 2012c

six == 1.1.0

龙卷风== 2.2.1

virtualenv == 1.7.1.2

wsgiref == 0.1.2

My-MacBook-Pro:~ username$ pip freeze
PyYAML==3.10
bson==0.3.3
distribute==0.6.26
mimeparse==0.1.3
pymongo==2.2
python-dateutil==2.1
pytz==2012c
six==1.1.0
tornado==2.2.1
virtualenv==1.7.1.2
wsgiref==0.1.2

MongoDB版本

My-MacBook-Pro:〜用户名$ brew info mongodb

mongodb 2.0.5-x86_64

http://www.mongodb.org/

/usr/local/Cellar/mongodb/2.0.5-x86_64(17文件,121M)*

https: //github.com/mxcl/homebrew/commits/master/Library/Formula/mongodb.rb

My-MacBook-Pro:~ username$ brew info mongodb
mongodb 2.0.5-x86_64
http://www.mongodb.org/
/usr/local/Cellar/mongodb/2.0.5-x86_64 (17 files, 121M) *
https://github.com/mxcl/homebrew/commits/master/Library/Formula/mongodb.rb

此问题的解决方案对pip来说不是好消息:我必须先卸载pymongo和bson,然后再重新安装bson,然后再安装pymongo。因此,看来安装顺序实际上很重要!

The solution to this problem was not good news for pip: I had to uninstall pymongo and bson, then reinstall bson, then pymongo. So it looks like the order of installation is actually important!