13

nodejs内からmongodump / mongorestoreを実行できるかどうか疑問に思っています。それは実際にはマングースの目的ではないため、おそらくマングースのことではありません。しかし、mongodb nodejs ドライバーからこれらのコマンドを実行する方法があるかどうか疑問に思っています。

最後の手段としてこれを実行できるようです: node.js からプログラムで mongodump コマンドを実行するにはどうすればよいですか?

4

2 に答える 2

11

あなたが言うとき、私はあなたがあなたのnode.jsアプリケーションからコマンドを'from node.js'呼び出すことを意味すると思います。mongodump/mongostore

mongodumpおよびmongostoreはコマンドラインアプリケーションです。「それらを実行」できる唯一の方法node.jsは、ここですでに見つけたソリューションを使用することです。

つまり、child_process.spawnまだ誰もそれらのnode.jsバインディングを作成していないのでを使用します。

それはまさにあなたが必要とすることをするので、私はそれを「最後の手段」としては使いません。ただし、を使用すると、データのバックアップと復元をmongodb自分で簡単に実装できますnode.js driver。つまり、コレクションを繰り返して保存し、バックアップを復元するために逆の操作を行います。

しかし、私はそれに反対することを強くお勧めします。リンクした質問で提案されたアプローチの問題は比較的軽微です。私自身、本番環境で使用されているのを見たことがありますが(まあ、似たようなものです)、問題はありませんでした。

于 2013-03-23T17:51:38.817 に答える
2

私はこれに小さなモジュールを書きました: https://github.com/meryn/mongo-utils。mongo 接続文字列を解析します。

于 2013-03-24T01:30:33.320 に答える