Mongodb Mongo Shell找不到任何方法

Mongodb Mongo Shell找不到任何方法,mongodb,Mongodb,我使用MongoDB shell版本运行Debian:2.4.3 我跑 use dbname db.stats.find() 它输出以下内容 > db.stats.find() Mon May 13 17:55:20.933 JavaScript execution failed: TypeError: Object function (scale){ return this.runCommand( { dbstats : 1 , scale : scale } ); } has no

我使用MongoDB shell版本运行Debian:2.4.3

我跑

use dbname
db.stats.find()
它输出以下内容

> db.stats.find()
Mon May 13 17:55:20.933 JavaScript execution failed: TypeError: Object function (scale){
return this.runCommand( { dbstats : 1 , scale : scale } );
} has no method 'find'
但是,在其他集合上运行它可以很好地工作


此mongo实例正在与nodejs一起使用。

我想您需要
db.stats()
如果您确实在数据库dbname中创建了一个名为stats的集合,那么我建议您重命名它。在shell中,db对象有一个stats()方法,用于查看数据库的统计信息

同时,您可以使用稍微复杂一点的语法:

> db.getSiblingDB("dbname").getCollection("stats").find()
Fetched 0 record(s) in 4ms
或者,如果您使用的是dbname,则:

> db.getCollection("stats").find()

我不这么认为你有一个名为“统计”的集合吗?因为stats是db对象上的一个方法,所以如果您尝试使用常规shell语法,就会出现此错误。show collections是否在此数据库中显示此集合?这就是为什么我没有意识到stats是预定义的。如果db.stats.rename('blcstats')Mon May 13 23:05:33.990 JavaScript执行失败,我如何重命名:TypeError:Object function(scale){返回此.runCommand({dbstats:1,scale:scale});}没有方法“rename”使用我展示的相同语法:db.getCollection(“stats”).renameCollection(“newname”);