備考 サーバーMongoDBデータベース移行実績【クラウドMongoDBデータベース移行】

1.サーバーMongoDBデータベース移行実績

1. 背景:

元のサーバーの有効期限が切れ、コストが高いため、新しいユーザーとしてサーバーを購入することしかできませんでした。

2. 要件:

元のクラウド MongoDB データベースを新しく購入したサーバーに移行します。

3. 注:

以前の MongoDB はパゴダの視覚的な作成を使用せず、コマンド ラインを使用していたため、視覚化ページでデータベースを表示できませんでした。そのため、backup コマンドを使用してバックアップを作成し、バックアップをローカル コンピューターにダウンロードします。

1.1 MongoDB データベースのバックアップ手順

1. MongoDB サーバーに接続します。mongo コマンドを使用して MongoDB サーバーに接続できます。たとえば、コマンド ラインで次のコマンドを入力します。

mongo --host <hostname> --port <port> -u <username> -p <password> --authenticationDatabase admin

このうち、「<hostname>」は MongoDB サーバーのホスト名または IP アドレスを指定し、「<port>」は MongoDB サーバーのポート番号を指定し、「<username>」と「<password>」はユーザー名とパスワードを指定します。 MongoDB 管理者の " --authenticationDatabase" は、MongoDB 管理者が存在するデータベースの名前を指定します。

2. バックアップするデータベースを選択します。MongoDB サーバーに接続した後、「use」コマンドを使用して、バックアップするデータベースを選択します。例えば:

use mydatabase

3. バックアップコマンドを実行します。mongodump コマンドを使用して、MongoDB データベースをバックアップします。例えば:

mongodump --out /path/to/backup/folder/

このうち、「-out」パラメータは、バックアップ ファイルを保存するディレクトリを指定します。

4. バックアップを完了します。バックアップするデータのサイズと MongoDB サーバーのパフォーマンスによっては、バックアップ プロセスに時間がかかる場合があります。バックアップが完了すると、バックアップ ファイルが保存されたディレクトリにバックアップ データを含むフォルダが表示されます。

バックアップ ファイルが保存されているディレクトリに移動し、ローカル コンピューターにダウンロードします。

ここに画像の説明を挿入

1.2 データベースを新しいサーバーに復元する

1. パゴダ ビジュアライゼーションを使用して、新しいデータベースを作成します。データベース名、ユーザー名、およびパスワードを設定します。

画像-20230407120408566

2. ローカル コンピューターのバックアップ MongoDB データを新しいサーバーにアップロードします。

画像-20230407120528962

3. 端末コマンドを使用して復旧操作を実行します (最初にデータベース パスワード認証をオフにします)。

SSH ターミナルで mongorestore コマンドを使用して、バックアップ ファイルのデータを新しいデータベースに復元します。たとえば、バックアップ ファイルの名前が「mydb.bson」であるとすると、次のコマンドを使用してデータを復元できます。

mongorestore -h 127.0.0.1 -d <database_name> <path_to_backup_file>

私の例を見てみましょう:

mongorestore -h 127.0.0.1 -d <数据库名> /www/backup/database/mongodb/beifeng/mongo

その中で、「-h」パラメーターは MongoDB サーバーの IP アドレスを指定します.MongoDB サーバーがローカル マシンにインストールされている場合は、「127.0.0.1」または「localhost」を使用できます;「-d」パラメーターは、復元するデータベースの名前は、作成したデータベース名に置き換えます。「<path_to_backup_file>」は、「/home/wwwroot/default/_backup/database/mydb.bson」など、バックアップ ファイルのパスと名前を指定します。

実行効果は次のとおりです。

画像-20230407120701071

4. Navicat Premium を使用してリモート接続し、以下を表示します。

画像-20230407120807693

データの復旧が完了し、通常どおり使用できます。

1.3 まとめ

1. MongoDB データベースをバックアップする一般的な手順は次のとおりです。

  1. MongoDB サーバーに接続します。
  2. バックアップするデータベースを選択します。
  3. mongodump コマンドを使用して、MongoDB データベースをバックアップします。
  4. バックアップを完了します。

バックアップ プロセス中は、業務時間外にバックアップを実行し、バックアップ期間中は MongoDB サーバーで他の操作を行わないようにして、サーバーのパフォーマンスへの影響を回避することをお勧めします。

2. MongoDB データベースを復元する一般的な手順は次のとおりです。

  • MongoDB サーバーに接続します。mongo コマンドを使用して MongoDB サーバーに接続できます。たとえば、コマンド ラインで次のコマンドを入力します。
cssCopy code
mongo --host <hostname> --port <port> -u <username> -p <password> --authenticationDatabase admin

このうち、"" は MongoDB サーバーのホスト名または IP アドレスを指定し、"" は MongoDB サーバーのポート番号を指定し、"" と "" は MongoDB 管理者のユーザー名とパスワードを指定し、"--authenticationDatabase" は指定します。 MongoDB 管理者が存在するデータベースの名前。

  • 復元するデータベースを作成します。復元するデータベースが MongoDB サーバーに存在しない場合は、最初に作成する必要があります。たとえば、MongoDB サーバーに接続した後、「use」コマンドを使用して既存のデータベースを選択し、「db.createCollection()」コマンドを使用して新しいコレクションを作成します。例えば:
perlCopy codeuse mydatabase
db.createCollection("mycollection")
  • 復元コマンドを実行します。mongorestore コマンドを使用して、MongoDB データベースを復元します。例えば:
bashCopy code
mongorestore --dir /path/to/backup/folder/

その中で、「-dir」パラメータは、バックアップ ファイルが配置されているディレクトリを指定します。

  • 完全な回復。復元するデータのサイズと MongoDB サーバーのパフォーマンスによっては、復元プロセスに時間がかかる場合があります。復元が完了すると、復元されたデータベース内のすべてのデータを見つけることができるはずです。

MongoDB データベースを復元する場合、ターゲット データベースにデータが既に存在する場合、復元操作によってデータの競合やデータの損失が発生する可能性があることに注意してください。したがって、復元操作の前に、ターゲット データベースをバックアップし、ターゲット データベースをクリアすることをお勧めします。同時に、復旧操作の正確性を確保するために、復旧操作中に MongoDB サーバーが正常に実行され、他のユーザーが MongoDB サーバーを操作していないことを確認することをお勧めします。

おすすめ

転載: blog.csdn.net/weixin_52908342/article/details/130009265