これについてどうすればよいかわかりません。mongodb コレクションを .csv としてエクスポートする必要があります。ノードで spawn.child_process を使用して mongoexport を呼び出すとこれが達成されますが、私の mongodb サーバーとノード サーバーは現在別のマシン上にあります。
ノード サーバーから mongo サーバーの mongoexport をリモートで呼び出して、ノード サーバーに .csv を取得するにはどうすればよいですか?
これについてどうすればよいかわかりません。mongodb コレクションを .csv としてエクスポートする必要があります。ノードで spawn.child_process を使用して mongoexport を呼び出すとこれが達成されますが、私の mongodb サーバーとノード サーバーは現在別のマシン上にあります。
ノード サーバーから mongo サーバーの mongoexport をリモートで呼び出して、ノード サーバーに .csv を取得するにはどうすればよいですか?
まず、MongoDB ポートが開いていて、サーバーから接続できることを確認します。次に、使用します
mongoexport --username user --password pass --host host --db database --collection coll --type=csv --fields=displayName,emailAddress --query='{"status": "verified"}' -o users-YEAR-DAY-MONTH.csv
サーバーがパブリック ネットワークにある場合は、必ず認証を使用してください。
https://docs.mongodb.com/manual/security/
または、ssh コマンドを実行mongoexport
し、MongoDb サーバーで実行してからsftp
、ファイルを元に戻す方が簡単な場合があります (最初に圧縮することもできます)。
mongoexportの詳細
@GianfrancoP の回答を使用しましたが、構文は非推奨です。エクスポートするフィールド名を含める必要があります。更新された構文は次のとおりです。
mongoexport --username user --password pass --host host --db database --collection coll --type=csv --fields fieldname
GianPaJ の回答は私が使用しているソリューションですが、欠点は、エクスポートされたデータをクライアントではなくリモート ホストにのみ出力することです。
回避策の 1 つは、エクスポートされたファイルで SCP または SFTP を使用することです。mongoexport オプションを使用してそのファイルを実際に転送する方法がわかったら、この投稿を更新します。