編集済み 2 数か月前 によって ExtremeHow 編集チーム
バックアップ復元データベースウィンドウズモンゴDBデータ管理災害復旧メンテナンス操作ストレージ
翻訳が更新されました 2 数か月前
MongoDBは、現在最も人気のあるNoSQLデータベースの1つです。高性能、高可用性、容易なスケーラビリティを提供します。データベースを操作する際には、データが安全で予期しない事態が発生した場合でも復元可能であることを確認することが重要です。このガイドでは、特にWindowsオペレーティングシステムでMongoDBデータベースをバックアップおよび復元する方法を説明します。このプロセスは慣れていないと難しく感じるかもしれませんが、詳細なステップバイステップガイドを使用すると、初心者でも習得できます。
データをバックアップすることは、情報の偶発的な損失から保護するために重要です。MongoDBでは、データの特定の時点のコピーを作成することでバックアップを行います。復元は、バックアップコピーからデータをデータベースに戻す作業です。MongoDBは、mongodump
やmongorestore
などのツールを提供しており、これらの作業を簡単にします。
MongoDBは、バックアップおよび復元作業をサポートするMongoDBサーバーにパッケージ化されたコマンドラインユーティリティを提供します。これらのツールは:
mongodump
: データベースの内容をバイナリエクスポート(bson)として作成するコマンドラインツールです。バックアップを作成するために使用されます。mongorestore
: このツールは、mongodump
によって作成されたバックアップからデータベースを復元するために使用されます。エクスポートされたデータをMongoDBにインポートします。データをバックアップおよび復元する前に、WindowsマシンにMongoDBがインストールされていることを確認してください。公式MongoDBウェブサイトからインストーラーをダウンロードできます。MongoDBをセットアップするためのインストール手順に従ってください。最も重要なのは、MongoDBサーバー(`mongod`)が稼働していることを確認することです。
Windowsでmongodump
を使用してMongoDBデータベースをバックアップするには、これらの手順に従います:
Win + Rを押し、cmd
と入力してEnterを押し、コマンドプロンプトを開きます。mongodump
ツールがあるMongoDBのbinディレクトリーに移動します。通常、MongoDBがインストールされたディレクトリー(\Program Files\MongoDB\Server\\bin)にあります。
バックアッププロセスを開始するためにmongodump
コマンドを実行します。コマンドはさまざまなオプションを使用します:
mongodump --uri="mongodb://localhost:27017" --db=mydatabase --out="C:\backups"
--uri
オプションは接続するMongoDBインスタンスを指定します。ホスト名やIPアドレスを必要に応じて調整します。--db
オプションはバックアップするデータベースの名前を指定します。すべてのデータベースをバックアップするには省略可能です。--out
オプションはバックアップを保存するディレクトリーを指定します。ディレクトリーはシステム上に既に存在する必要があります。実行が成功すると、指定したディレクトリー内にデータベースの名前のフォルダーが生成されます。これには、データベース内のコレクションを表すBSONファイルを含むサブディレクトリーが含まれています。
バックアップからMongoDBデータベースを復元するには、mongorestore
ツールを次のように使用します:
前と同様に、コマンドプロンプトを開き、MongoDBのbinディレクトリーに移動します。
mongorestore
コマンドを実行して、データをMongoDBインスタンスにインポートします:
mongorestore --uri="mongodb://localhost:27017" --db=mydatabase "C:\backups\mydatabase"
--uri
オプションは接続するMongoDBインスタンスを指定します。--db
オプションは、データを復元するターゲットデータベースを指定します。新規または既存のデータベースを指定できます。"C:\backups\mydatabase"
)は、エクスポートデータフォルダを指している必要があります。間違いをした場合やデータベースをリネームしたい場合には、--drop
オプションを使用して、復元前にターゲットデータベース内の既存データを削除することができます。
MongoDBのmongodump
およびmongorestore
ツールは、バックアップおよび復元プロセスを改善する高度なオプションを提供しています:
--username <username>
: このユーザーとして認証します。--password <password>
: 認証のためにこのパスワードを使用します。--authenticationDatabase <database>
: ターゲットデータベースと異なる場合に認証データベースを指定します。--gzip
: gzipを使用して出力ファイルを圧縮します。--archive=<filename>
: 出力を単一ファイルに直接格納します。携帯可能で圧縮されたアーカイブを作成するのに便利です。--oplog
: オプログのバックアップを作成します。シャードおよびレプリカセットの展開でポイントインタイムリカバリに必要です。--drop
: ダンプから復元する前にターゲットデータベース内の既存データを削除します。--dir
: bsonデータの入力ディレクトリパスを指定します。--nsInclude <namespace_name>
: 指定されたパターンに一致するコレクションのみを復元します。--maintainInsertionOrder
: ドキュメントをダンプした順序で維持します。これにより一貫性が確保されますが、遅くなることがあります。データベースを定期的にバックアップすることは非常に重要です。幸い、Windows Task Schedulerを使用することでこのプロセスを自動化できます。以下の手順はバックアップ用のスケジュールされたタスクを設定する方法を示しています:
Windowsの検索バーで "task scheduler" を検索し、結果から選択してタスクスケジューラーを開きます。
スケジュールしたいコマンド(例:mongodump --uri="mongodb://localhost:27017" --out="C:\backups"
)を含むバッチスクリプト(.bat
ファイル)を作成し、アクセス可能な場所に保存します。
タスクスケジューラーが不安定なシステムでは、代替策としてのクローンジョブが役立ちます。この機能は、Windowsが安定して稼働するコンテナベースのエコシステムや仮想マシン内で動作します。
バックアップおよび復元操作をガイドするいくつかのベストプラクティスがあります:
さまざまなクラウドサービスプロバイダーが、MongoDBをバックアップするための堅牢なソリューションを提供しています。MongoDB Atlas、AWS、Azure、またはGoogle Cloud Platformなどのサービスは、バックアップおよび復元メカニズムを組み込んだクラウドベースのデータベースサービスを提供しており、プロセスをさらに簡素化し、より信頼性の高いデータ保持を可能にします。
MongoDBのバックアップおよび復元機能を理解し使用することで、データが安全かつ回復可能であることを保証できます。このガイドでは、Windowsでこれらのタスクを実行するための包括的かつシンプルなアプローチを提供し、必要なときにMongoDBデータを効率的にバックアップおよび正しく復元することを保証しています。
記事の内容に誤りがある場合, あなたは