web-dev-qa-db-ja.com

MongoDBはフォルダーからbsonファイルをインポートします

インポートできません(.bson)コンピューター上のファイルをMongoDBデータベースにコピーします。以下のコマンドを試行しています:

1)mongorestore -d demo -c dcoll C:\data\dump\Twitter\tweets.bson

そして

2)mongorestore -d demo -c dcoll /dump/Twitter/tweets.bson
4
sai

mongorestore -d demo -c dcoll C:\ data\dump\Twitter\tweets.bson

MongoDB構文クエリを実行したので、それは正しいようです。あなたのスクリプトコードによると、demodatabaseであり、dcollcollectionであり、の(.bson)ファイルを復元したいdcollcollection内のtweets.bson

MongoDBで(.bson)ファイルを復元する前に、ここでそのことを述べておきます。 データベース名コレクション名がMongoDBにあることを確認する必要があります。データベースにCollectionがない場合は、まずデータベースにCollectionを作成します。

たとえば、最初にmongo Shellで接続し、データベースとコレクションを表示します。存在するかどうかにかかわらず、MOngoDBで復元するもの。

MongoDBでデータベースを表示するには

たとえば、私の環境では確認しましたが、これらのデータベースはMongoDBにあります。

> show dbs
admin             0.000GB
blog              0.011GB
citibike          0.338GB
city              0.002GB
enron             0.213GB
local             0.000GB
ships             0.001GB
test              0.164GB
video             0.237GB
week6             0.006GB

testデータベースの(.bson)ファイルを復元したいとします。

> use test
switched to db test
>

次に、collectiondataintestdatabaseを作成します。

> db.createCollection("data")
{ "ok" : 1 }   // ok : 1 means collection successfully created 

また、クエリから、dataコレクションがtestデータベースにあるかどうかを確認します。

> show collections
airline
amwaj
cars
collection
data
movies
stuff
>

ここにデータ収集が存在し、最後に(.bson)をdatacollectionに復元します。

注:mongo Shellが存在するmongorestore.exeから(.bson)ファイルを復元していることを確認してください。基本的に、このファイルはMongoDBサーバー[〜#〜] bin [〜#〜]フォルダーにあります。私の場所ではC:\Program Files\MongoDB\Server\3.6\binです。

したがって、最終的にmongorestoreコマンドは次のようになります

C:\Program Files\MongoDB\Server\3.6\bin>mongorestore -d test -c data C:\data\dump\100YWeatherSmall\data.bson
    2017-12-25T09:55:50.531+0300    checking for collection data in C:\data\dump\100YWeatherSmall\data.bson
    2017-12-25T09:55:50.561+0300    reading metadata for test.data from C:\data\dump\100YWeatherSmall\data.metadata.json
    2017-12-25T09:55:50.565+0300    restoring test.data from C:\data\dump\100YWeatherSmall\data.bson
    2017-12-25T09:55:52.662+0300    [##......................]  test.data  43.9MB/403MB  (10.9%)
    2017-12-25T09:55:55.565+0300    [#####...................]  test.data  87.6MB/403MB  (21.7%)
    2017-12-25T09:55:58.501+0300    [#########...............]  test.data  152MB/403MB  (37.6%)
    2017-12-25T09:56:01.501+0300    [#############...........]  test.data  230MB/403MB  (57.1%)
    2017-12-25T09:56:04.501+0300    [################........]  test.data  282MB/403MB  (70.0%)
    2017-12-25T09:56:07.501+0300    [######################..]  test.data  377MB/403MB  (93.6%)
    2017-12-25T09:56:09.349+0300    [########################]  test.data  403MB/403MB  (100.0%)
    2017-12-25T09:56:09.349+0300    no indexes to restore
    2017-12-25T09:56:09.350+0300    finished restoring test.data (250000 documents)
    2017-12-25T09:56:09.350+0300    done

ここで上記のコードで私が使用しました

(.bson)ファイルを復元するためのmongorestoreコマンド。

-d //データベースの場合
-c //コレクション用

C:\ data\dump\100YWeatherSmall\data.bson //(.bson)ファイルの場所.

これがお役に立てば幸いです。

さらにあなたの参照 mongorestore

2

上記の答えは機能しますが、単純にMongodb Client Studio 3T を使用して、復元プロセス(部分的または完全)を非常に簡単にすることができます

また、彼らはそれを行う方法についてのチュートリアルを持っています

0
Aman