問題タブ [mongodump]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mongodb - Mongodump クエリ エラー
実行すると、次のようにmongodump
訴えました。
$and
and$gt
句をエスケープすると、次のようになります。
代わりに文句を言います
このクエリはシェルで正常に実行されますが、なぜこれを のパラメーターmongodb
として使用できないのかわかりません。--query
mongodump
mongodb - 2.6 から 3.0 へのアップグレード後に Mongodump が頻繁に失敗する
私はデータベースを Mongo 3.0 にアップグレードする過程にあり、毎日のバックアップ プロセスをmongodump 2.6.1 から 3.0.1 にアップグレードする段階にあり、並列化されたコレクションのダウンロードによりパフォーマンスが向上しています。
mongodump がエラーで途中で失敗するという問題が発生しています
8回の試行のうち、6回は失敗し、2回は成功しました。この特定のエラーについてオンラインで他に何も見つけることができませんでした。
- mongodump 全体のサイズは約 1 TB で、数千のコレクションがあります。障害は途中で発生します。多くのファイルがディスクに蓄積し始めると、 mongodumpは実際に起動し、
.bson
mongodump の出力で進行状況ファイルを確認できます。- 150GB の mongo 2.4 インスタンスに対して同じコードを実行すると、うまくいくように見えますが、エラーが発生するほど長く実行されていない可能性があります。
- 私がダンプしている mongo データベースのバージョンは 2.4 です。2.4 -> 2.6 -> 3.0 にアップグレードする予定です。そのため、事前に mongodump ツールをアップグレードして、2.4 および 2.6 に対して正常に動作することを期待しました。
- 現在のバックアップ サーバーは、2.4 mongo データベースに対して mongodump 2.6.1 を使用しており、バックアップ パイプラインの mongodump ステージで 100% の信頼性を維持しています。
mongodump バックアップ サーバー (Google コンピューティング エンジン VM) は、mongo サーバー (ハード メタル サーバー) とは別のマシンにあり、mongo サーバーはファイアウォールの背後にあります。そのため、2 台のマシン間に SSH トンネルを確立し、コマンドで mongodump を実行し
/li>--port
ます。次のようになります。
何が起こっているのかについて、誰かが私にいくつかのヒントを与えることができますか? mongo データベースが 3.0 に完全にアップグレードされたら、mongodump 3.0 を使用する必要があります。
更新:私が得ている別のエラーは
java - Eclipse内でprocessbuilderまたはrunexecでコマンドを実行できません
Java Web アプリケーション (Eclipse で Tomcat 8 を使用する Maven プロジェクト) からコマンドを実行しようとしています。このコマンドを cmd ラインまたは .jar ファイルで実行すると問題はありませんが、Eclipse では機能しません。ProcessBuilder
私はクラスを試しRuntime.getRuntime().exec()
ましたが、両方とも同じ「ファイルが見つかりません例外」例外をスローします。
実行したいコマンドは次のとおりです。
ランタイム環境が mongodump コマンド (および/またはコマンドで指定されたフォルダー) を見つけることができないようです。何か提案はありますか? ここに私のコードがあります:
}
これは「プロセス ビルダー」バリアントです。
ありがとう、ジュリオ
bash - リモートマシンからバックアップを作成するためにmongodumpを保護する方法は?
mongod
たとえば、 でインスタンスを実行していて、で1.2.3.4
別のバックアップ サーバーを使用してい100.90.80.1
ます。
次の bash スクリプトを使用して、から1.2.3.4
へのmongodb データのバックアップを作成する必要があります。100.90.80.1
1.2.3.4
しかし、このオプションが原因で接続できません/etc/mongodb.conf
上記の制限を変更する可能性があることはわかっていますbind_ip = 0.0.0.0
が、安全ではありません。
上記のbashスクリプトを使用して、リモートmongodサーバーへの安全な接続と別のサーバーへのファイルのバックアップを作成する最良の方法は何ですか?
PS : 上記のスクリプトを次のように実行します。
mongodb - oplogReplay を使用して単一の mongodb データベースを復元する方法は?
これがサポートされている操作であるかどうかを見つけるのに苦労しています。以前はそうではなかったことを示唆するものを見つけましたが、サポートされていないことを示すログを取得していません (ログを混乱させるだけです)。
参考のため:
- OS:Centos6.6
- モンゴッド: v3.0.2
- モンゴ シェル: v3.0.2
- モンゴダンプ: v3.0.2
- モンゴストア: v3.0.2
ダンプを作成するために実行しているコマンドは次のとおりです (認証を使用しています)。
ダンプ後の元のファイル構造は次のとおりです。
必要なものを取得するために、いくつかの異なる復元のバリエーションを試しましたが、それぞれが少しずれているようです。mongorestoreに関するmongoのドキュメントで次を読んだ後:
--db は、mongorestore が復元する BSON ファイルを制御しません。復元されるデータを制限するには、mongorestore パス オプションを使用する必要があります。
復元したい特定のデータベースのフォルダーに oplog.bson をコピーし、dump/ 内から次のコマンドを実行できるように思えます。
これらのログが表示されるため、これは混乱を招きます。
Dogs.oplog に関する最初の部分は、あたかも機能しているように見えますが、oplog に関する後のメッセージは私を混乱させます。
私が試したディレクトリとパスのバリエーションに関係なく、特にこのメッセージを満足させることはできないようです:
これは、oplog の再生が行われていないことを意味しますか? ポイントインタイム バックアップ / リストアは期待どおりに動作していますか? mongotools のログ メッセージの改善に関するチケットをいくつか見たのを覚えています。
mongodb - mongorestore でバックアップをインポートするときのエラー 10334「BSONObj サイズが無効です」
多くの小さなドキュメントを含む MongoDB コレクションのバックアップがあります。バックアップは によって作成されましたmongodump
が、 を使用してインポートしようとするとmongorestore
エラーが発生します。
AssertionException 処理要求、クライアント接続の終了: 10334 BSONObj サイズ: 18039019 (0x11340EB) は無効です。サイズは 0 から 16793600 (16MB) の間でなければなりません
MongoDB バージョン 3.0.3 (トランクから) を実行しています。