我使用以下代码连接数据库,并为每个数据库列出所有集合:
conMongo =MongoClient(connect,27017)
listOfDBs = conMongo.database_names()
for i in listOfDBs:
db = conMongo[i]
print db
print db.collection_names():
conMongo.disconnect()
与数据库的连接没有任何问题,可以打印数据库列表。
但db.collection_names()打印空列表,尽管每个数据库中有许多集合。
答案 0 :(得分:0)
我通过更新pymongo包解决了我的问题:
Could not fetch URL
答案 1 :(得分:0)
这是一个老错误(PYTHON-790,SERVER-16224),至少可以追溯到2014年。一个使用2.8之前版本的pymongo
的系统(例如Ubuntu 14,卡在{{1} 2.6.3)询问2.8或更高版本的MongoDB服务器会看到它的pymongo
方法总是返回一个空列表。没有简单的解决方法,只使用collection_names()
答案 2 :(得分:0)
仔细检查数据库名称
MongoDB 是区分大小写的数据库,因此代码中的数据库名称和服务器应该完全相同。
对我来说,我的数据库名称是 db_name
,我在我的代码中查找了 db-name
所以它不起作用
希望有帮助:)