2012-03-26 6 views
3

私は、次のパスにBSONファイルがたくさんあります。mongorestore構文エラー

Mon Mar 26 14:36:36 SyntaxError: missing ; before statement (shell):1 

:私は次のエラーを取得する

> mongorestore --db Sid --drop dump/Sid 

:私は、コマンドを実行すると

c:/mongodb/bin/dump/Sid 

を私の命令の問題は何ですか?

+0

内のデータベースは、なぜあなたは '--dropダンプ/ Sid'を追加することをコピー? –

+0

@Sergioはポストでそのコマンドの全面に来ました。どうすればそのフォルダを復元できますか? – codious

+0

バックアップからコピーします。 –

答えて

20

入力からは、JSシェルの内側からmongorestoreを実行しようとしているように見えます。

Mongorestoreはスタンドアロンアプリケーションであり、端末から直接実行されます。

以下は動作しません。

c:\mongodb-win32-x86_64-2012-03-20\bin>mongo.exe 
MongoDB shell version: 2.1.1-pre- 
connecting to: test 
> mongorestore --db test --drop \dump\test 
Mon Mar 26 11:29:13 SyntaxError: missing ; before statement (shell):1 
> 

あなたが成功する必要がある端末からmongorestore直接実行する場合:

c:\mongodb-win32-x86_64-2012-03-20\bin>mongorestore --db test --drop \dump\test 
connected to: 127.0.0.1 
... (truncated for brevity) ... 

c:\mongodb-win32-x86_64-2012-03-20\bin> 

Mongodump/mongorestore上のドキュメントは、「インポート中に見つけることができますエクスポートツール」ドキュメント: http://www.mongodb.org/display/DOCS/Import+Export+Tools

+1

これは私のようなn00bにとって非常に役立ちました。「mongorestore」は、mongoシェルからではなく、ターミナルから実行されるべきであることがドキュメントではっきりしていないので、何が起きているのか理解できませんでした。 – dwstein

3

mongorestore is not commは、MongoDBのbinディレクトリの実行可能ファイルです。あなたはすでにあなたはすでにあなたが直接mongorestoreコマンドを実行することができます

mongod --dbpath "..\mongodb\data" 

としてDBPATHを指定 を実行しているのmongodインスタンスを持っている場合は、以下の はhttp://docs.mongodb.org/manual/reference/program/mongorestore/

The mongorestore program writes data from a binary database dump created by mongodump to a MongoDB instance. mongorestore can create a new database or add data to an existing database.

からの引用です。

mongorestore ..\data\dump 
1

あなたは...あなたは、コマンド以下を見てください... cmdを経由していないモンゴシェルでこれを実行する必要が ...このようmongorestoreコマンドを使用することはできません

>path\to\mongorestore.exe -d dbname -c collection_name path\to\same\collection.bson 

ここでpath\to\mongorestore.exeは、mongodbのbinフォルダ内のmongorestore.exeのパスです。 dbnameは、databseの名前です。 collection_nameは、collection.bsonの名前です。 path/to/same/collection.bsonは、そのコレクションまでのパスです。

mongoシェルからは、データベースが作成されたかどうかを確認できます(存在しない場合は、同じ名前のデータベースがコレクションとともに作成されます)。

0

あなたが外にデータベースを復元したい場合は、

<pre>C:\database drive(Create a folder database and copy your database) ,then follow the steps 
1)c:\> cd database 
2)c:\database>dir 
3)c:\database>"\Program Files\MongoDB\Server\3.0\bin\mongorestore.exe" 

now open robomongo and check it will contain the restored dbs.. or check on command prompt show dbs</pre>