从MongoDB导出system.profile不会';行不通

从MongoDB导出system.profile不会';行不通,mongodb,Mongodb,我正在尝试出口: ilya@server ~]$ mongoexport --host localhost --port 27000 --collection system.users --db mydb --out profile.json connected to: localhost:27000 exported 1 records 与系统配合正常。用户 但不适用于系统。配置文件: [ilya@server ~]$ mongoexport --host

我正在尝试出口:

ilya@server ~]$ mongoexport --host localhost --port 27000  --collection system.users --db mydb --out profile.json                
connected to: localhost:27000
exported 1 records
系统配合正常。用户

但不适用于
系统。配置文件

[ilya@server ~]$ mongoexport --host localhost --port 27000  --collection system.profile --db mydb --out profile.json
connected to: localhost:27000
exported 0 records
集合不为空:

[ilya@server ~]$ mongo localhost:27000/mydb
MongoDB shell version: 2.2.3
connecting to: localhost:27000/mydb
mongos> db.system.profile.count();
1044
我需要将这些行导出并在某个地方使用它们,例如与普通集合(不作为
system.profile
)一起使用。

来自:

无法在mongos实例上启用评测。要启用分析,请执行以下操作: 在碎片集群中,必须为每个mongod实例启用分析 在集群中

另请参见(尽管此错误自1.9.1起已修复,并且您使用的是更高版本)

因此,请尝试直接从保存所需
system.profile
集合的mongod实例中导出
mongoexport

**更新**

第二种方法是不使用mongoexport,而是直接从MongoShell获取集合(因为您可以从MongoShell内部看到集合)

为此,首先编写以下脚本并将其保存到
print profile.js

c = db.system.profile.find();
while(c.hasNext()) {
  printjson(c.next());
}
然后从bash shell中执行以下行:

mongo localhost:27000/mydb print-profile.js  > profile.json

稍等片刻,在
profile.json中,您将获得所需的数据。

已收集的分析数据,是的,我知道,但谢谢!我会尝试这样做。我为您的问题添加了第二种方法,看看这是否对您有帮助。我确认将mongoexport与system.profile collection一起使用直接在mongod上起作用。@ilalopoulos,关于system.profile,我在mongodb目录中搜索过,但没有找到它。是否有它的特定位置,或者是否有任何命令在mongodb目录中创建此文件?
mongoexport
选项在3.2上似乎不起作用。它说:“验证设置时出错:集合名称“system.profile”不允许以“system”开头。“有人知道它为什么不工作吗?”?