バックアップを復元する場合でも、サーバーを移行する場合でも、データのインポートはプロセスの重要なステップです。 MongoDBは、MongoDBデプロイメントにデータをインポートするための多くの方法を提供します。コレクション、データベース、またはデプロイメント全体をインポートできます。この投稿では、ScaleGridMongoDBホスティングデプロイメントにデータをインポートする3つの異なる方法について説明します。
-
MongoRestoreとMongoDump
MongoDumpおよびMongoRestoreツールは、データをデプロイメントにインポートする際の一般的なユーティリティです。 MongoRestoreを使用すると、コレクション、データベース、およびデプロイメントをインポートできます。 MongoRestoreツールは、MongoDumpによって作成されたバイナリデータベースダンプから特定のデータベースにコンテンツをインポートします。 MongoRestoreは、コンテンツを既存のデータベースにインポートしたり、新しいデータベースを作成したりできます。
MongoRestoreは、既存のデータベースへの挿入のみを実行し、更新やアップサートは実行しません。 。同じ_idの既存のデータの場合 ターゲットデータベースにすでに存在する場合、MongoRestoreはしません。 交換してください。
MongoRestoreを使用してScaleGridMongoDBデプロイメントにデータをインポートするには、次のコマンドラインを使用できます。
mongorestore --host <host> --port <port> --username admin --password <pass> /location/to/mongodumpfiles
-
db.copyDatabase()
db.copyDatabaseは、MongoShellに組み込まれている使いやすいコマンドであり、あるMongoDBインスタンスまたはデプロイメントから別のインスタンスにデータを簡単に移行およびコピーできます。 db.copyDatabaseコマンドは、ユーザー名とパスワードもサポートしているため、デプロイメント間でデータベースを簡単にコピーできます。リモートサーバーからデータベースをコピーするには、次の手順に従います。
- mongoシェルを使用してMongoDBデプロイメントに接続します。すなわち。 mongo
-u -p - 次のコマンドを実行します–“ db.copyDatabase(“
”、“ ”、“ ”、“ ”); 「
- mongoシェルを使用してMongoDBデプロイメントに接続します。すなわち。 mongo
-
スナップショット
スナップショットは、大量のMongoDBデータを保存する簡単な方法を提供し、MongoDBの展開を最初から復元するのに最適なポイントインタイムスナップショットを提供します。 ScaleGridのMongoDBデプロイメントは、スナップショットの復元をサポートします。注:次のコマンドを使用してスナップショットを復元すると、既存のすべてのデータが上書きされます。スナップショットで上書きする前に、既存のデータをバックアップすることを強くお勧めします。
- スナップショットを復元するMongoDBインスタンスへのSSH。展開の資格情報を取得する方法の詳細については、こちらをご覧ください。
- MongoDBサービスを停止する–「sudoservicemongodstop」
- mongodb_dataフォルダー内のすべてのデータを削除します–“ sudo / bin / rm -rf / mongodb_data / *”
- スナップショットをmongodb_dataフォルダーにコピーします–「sudomv -rsnapshot / * /mongodb_data/」
- MongoDBサービスを開始します–「sudoservicemongodstart」
以上です。とても簡単です。 MongoDBのデプロイを引き続き監視および管理します。新しいスナップショットデータを利用して、ScaleGridを介してこのMongoDBデプロイメントをバックアップ、復元、またはクローン化できます。
また、リモートサーバーからのMongoDBデータのインポート、およびmLabMongoDBクラスターをScaleGridに移行する方法に関する新しいヘルプドキュメントを確認してください。