导入BSON文档时出错,MongoDB

时间:2016-01-24 18:53:29

标签: javascript json mongodb bson

我正在尝试将示例BSON文件test.bson导入MongoDB。服务器已经运行,所以我使用

mongoimport --db test --collection foo --drop --file test.bson

但是,我收到以下错误:

2016-01-24T13:51:06.126-0500    connected to: localhost
2016-01-24T13:51:06.144-0500    Failed: error processing document #1: invalid character 'è' looking for beginning of value
2016-01-24T13:51:06.144-0500    imported 0 documents

(1)如何解决这个错误invalid character 'è' looking for beginning of value?我应该怎样做才能访问test.bson中的数据?

(2)有没有其他方法可以使用MongoDB导入数据?如果我在shell中并输入

$mongo

如何导入json / bson文件?

(BSON是JSON的二进制表示,带有其他类型信息。)

1 个答案:

答案 0 :(得分:5)

我认为你需要mongorestore而不是mongoimport。所以试试

mongorestore --db test --collection foo --drop test.bson

来自文档:

  

警告:

     

避免使用mongoimport和mongoexport进行完整的实例生成备份。它们不能可靠地保留所有丰富的BSON数据类型,因为JSON只能表示BSON支持的类型的子集。使用MongoDB备份方法中描述的mongodump和mongorestore来实现此类功能。

mongoimport和mongoexport与数据的类似json的表示一起使用(尽管它也适用于CSV和TSV)。 mongorestore和mongoexport适用于bson。