MongoDBドキュメント--基本インストール-Linuxインストール(mongodb環境構築)-Dockerインストール(データボリュームのマウント)-詳細なバージョン比較

アダム:

        私は以前に mongodb の基本的な概念をいくつか学びました。記事のこのセクションでは、mongodb のインストールについて説明し、概要を説明します。

 ポータル:

MongoDB ドキュメント--アーキテクチャ システム_Yidancheng ブログ-CSDN ブログ

 MongoDB ドキュメント -- 基本概念 - A Single Cheng ブログ - CSDN ブログ

MongoDB ドキュメント - 基本的な使用方法 -クライアント (dos ウィンドウ) / 視覚化ツールで MongoDB の基本ステートメントを 使用する 正規表現を使用して検索する

MongoDB を使用した MongoDB ドキュメントと高度な使用スプリングブート統合 --- MongoRepository による追加、削除、変更、クエリの実行_One Single Cheng Blog-CSDN ブログ

MongoDB を使用した MongoDB ドキュメントと高度な使用、スプリング ブート統合---追加、削除、変更、クエリを完了するための MongoTemplate_One Single Cheng のブログ - CSDN ブログ

公式サイトのチュートリアルは以下の通りです。 

MongoDB のインストール - MongoDB-CN-マニュアル

 バージョンの特徴

各バージョンの選択は次のとおりです。インストールおよびバージョンの選択の際に参照してください。

MongoDB 2.x バージョン:

このバージョンでは、集計パイプライン関数が導入されています。これは、SQL の GROUP BY 句や HAVING 句と同様に、データ パイプラインの原理を使用してデータ集計操作を実装する MongoDB の関数です。さらに、2.x バージョンには、シャード クラスターやプラグ可能ストレージ エンジンなどの重要な機能も追加されています。

MongoDB 3.2 バージョン:

このバージョンではシャード クラスターが改良され、シャード クラスターの構成がより簡単かつ柔軟になりました。さらに、バージョン 3.2 では、部分インデックス、ドキュメント検証、集計パイプラインなどの機能も追加されています。

MongoDB 3.4 バージョン:

このバージョンでは、データ複製 (レプリケーション) と障害回復 (フォールト トレランス) が改善され、システムの信頼性と可用性が向上しました。さらに、バージョン 3.4 では、地理空間インデックス、バイナリ データ、ユーザー定義関数などの機能も追加されています。

MongoDB 4.0 バージョン:

このバージョンでは、スケーラビリティ (Scalability)、パフォーマンス (Performance)、および信頼性 (Reliability) に重点を置いた MongoDB 4.0 が導入されています。マルチドキュメント トランザクション、集約パイプライン、ACID 保証などの新機能が導入されています。

MongoDB 4.2 バージョン:

このバージョンでは、クエリと集計の点で大幅に改善され、テキスト検索、地理空間クエリ、固定ビューなどの機能が追加されました。同時に、バージョン 4.2 では、より多くの操作と演算子をサポートするために、集約パイプライン (集約パイプライン) も強化されています。

 つまり、
トランザクションは必要ありません。
単純なトランザクションには 3.4 を選択することをお勧めします。
分散トランザクションまたはその他の必要な機能には 4.0 を選択することをお勧めします。
学習目的には 4.2 を選択することをお勧めします。最新バージョンを選択することをお勧めします。

公式発表によると、MongoDB 7.0.0-rc10 (リリース候補) バージョンには主に次の新機能と改善が導入されています。

現在の最新: 

  1. データの可用性と一貫性を向上させる新しいデータ修復ツールが導入されました。
  2. レプリカ セットの障害回復が強化され、より高速なフェイルオーバーとデータ回復が可能になります。
  3. 集約パイプラインが強化され、より多くの操作と演算子をサポートできるようになりました。
  4. 新しい地理空間クエリとインデックス作成機能が導入され、地理空間クエリの実行が容易になりました。
  5. パフォーマンスとスケーラビリティが向上し、より高いスループットとより優れた耐久性の保証が提供されます。

さらに、いくつかの既知のバグが修正され、システムの安定性とセキュリティが向上しました。全体として、MongoDB 7.0.0-rc10 には、データの可用性、一貫性、パフォーマンスの向上に役立つ多くの新機能と改善が導入されています。

この記事は 2 つの部分に分かれています。

        通常の Linux インストール - mongodb 環境変数を構成する

        docker のインストール - データ ボリュームを外部にマウントする

通常の Linux インストール

公式ホームページ(公式ダウンロードURL)

MongoDB コミュニティ Kubernetes オペレーターをインストールする | モンゴDB

1. 選択したバージョンに対応する tgz パッケージを公式 Web サイトからダウンロードします。

 

学習の必要性のため、ここでは最新バージョンを選択しました。 

 パッケージ化形式は tgz である必要があることに注意してください。

2. ファイルを Linux システムにアップロードします

サーバー接続ツールを使用して完了します。ストレージパスに注意してください。

 

 3. mongdb インストール パッケージを解凍します。

まず、圧縮パッケージが配置されているディレクトリを入力します

対象ファイルを解凍します。Linux でファイルを解凍するコードは次のとおりです。

cd /压缩包存在路径
tar -zxvf 目标压缩文件.tgz

解凍が完了すると、mongodb フォルダーが取得されます。この時点で、以前の圧縮パッケージは削除できます。

 

このフォルダーには bin などのフォルダーが含まれます。 

 4. mongodbに必要なディレクトリを作成します

4/1. /usr/local ディレクトリに mongodb フォルダーを作成します

cd /usr/local
mkdir mongodb

mongodb を保存する場所に応じて、フォルダーを作成する場所に注意してください。

4/2. mongodb の下にデータ ディレクトリとログ ディレクトリを作成し、ログ ファイル mongodb.log を作成します。

cd mongodb #进入文件夹
mkdir data
mkdir logs
touch /usr/local/mongodb/logs/mongodb.log

 5. mongodbのインストールディレクトリを移動する

解凍したファイル内のすべてのファイルを、管理しやすいように自分で作成したフォルダーに移動します。

Linux 構文に関する注意: /* は、ファイルを移動するすべてのサブファイルに対して mv 構文を使用します。

mv mongodb-linux-x86_64-rhel70-7.0.0-rc10/* /usr/local/mongodb

知らせ:

1. 現在のフォルダーの下、つまり記事のパスに従って、/usr/local パスの下にある必要があります。

2. 次のパスが移動先のパスです。

6. mongodbの環境変数を設定する

環境設定を行わないと、起動のたびに大量の起動パラメータを記述する必要があります。

環境変数の起動を構成します。

vim /etc/profile

ファイルに構成を追加します

export MONGODB_HOME=/usr/local/mongodb
export PATH=$MONGODB_HOME/bin:$PATH

設定ファイルを記述するときは、設定ファイルの指定に注意し、余分なスペースが入らないようにし、環境変数のパスに注意する必要があります。

知らせ!:

環境変数を変更した後は、必ず再起動するか、次のコードを使用して変更した構成ファイルを再ロードしてください。

source /etc/profile

 上記のコードを使用すると、 /etc/profile ターミナルを閉じて再度開くことなく、ファイルが再ロードされ、最新の環境変数設定が適用されます。

 または、ターミナルを閉じて再度開き、環境をリロードします

7. mongodb設定ファイルを追加します

対応する構成ファイルを追加し、コードを使用して構成ファイルを編集します。

vim /etc/mongodb.conf

共通構成を追加します。

#指定数据库路径
dbpath=/usr/local/mongodb/data
#指定MongoDB日志文件
logpath=/usr/local/mongodb/logs/mongodb.log
# 使用追加的方式写日志
logappend=true
#端口号
port=27017 
#方便外网访问,外网所有ip都可以访问,不要写成固定的linux的ip
bind_ip=0.0.0.0
fork=true # 以守护进程的方式运行MongoDB,创建服务器进程
#auth=true #启用用户验证
#bind_ip=0.0.0.0 #绑定服务IP,若绑定127.0.0.1,则只能本机访问,不指定则默认本地所有IP

8. MongoDB の起動とシャットダウン

mongoDBフォルダーに権限を付与します。

sudo chmod -R 777 /usr/local/mongodb

bin ディレクトリを入力してください

cd /usr/local/mongodb/bin

MongoDB を開始します (-conf は構成ファイルを使用して開始します)

mongod -f /etc/mongodb.conf

MongoDB を閉じる (-conf は構成ファイルによって閉じられます)

mongod --shutdown -f /etc/mongodb.conf

実行中かどうかを確認する

#查看进程
ps -ef | grep mongod

 視覚化ツールを使用した接続テスト

知らせ!:

接続する前に、オンライン セキュリティ グループでそのポート番号が許可されているか、Linux 上のファイアウォールのポート番号が開いているかを確認してください。

以下に、ファイアウォールをオフにする手順をいくつか示します。

在Linux中,关闭防火墙的指令取决于您使用的具体发行版。大多数发行版都使用了防火墙工具,如iptables或firewalld。

以下是几个常见发行版的关闭防火墙指令:

在Ubuntu或Debian上,可以使用以下命令关闭防火墙:
sudo ufw disable
在CentOS或RHEL上,可以使用以下命令关闭防火墙:
sudo systemctl stop firewalld
或者

sudo iptables -P INPUT ACCEPT
sudo iptables -P output ACCEPT
sudo iptables -P forward ACCEPT
sudo iptables -t nat -P PREROUTING ACCEPT
sudo iptables -t nat -P POSTrouting ACCEPT
sudo iptables -t mangle -P PREROUTING ACCEPT
sudo iptables -t mangle -P POSTrouting ACCEPT
sudo iptables -P INPUT DROP
sudo iptables -P FORWARD DROP
sudo iptables -P OUTPUT DROP
sudo iptables -t nat -P PRERouting DROP
sudo iptables -t nat -P postrouting DROP
sudo iptables -t mangle -P PREROUTING DROP
sudo iptables -t mangle -P POSTrouting DROP
这些命令将关闭iptables防火墙,但是请注意,这些命令可能会对系统造成安全风险

 Docker は mongodb をインストールし、データ ボリュームをマウントします - 例としてバージョンは 4.2 です

1. mongodb4.2バージョンのイメージをプルする

docker pull mongo:4.2

  

2.Mongoイメージがあるか確認する

docker images

3. ディレクトリと設定ファイルを作成する

ディレクトリを作成します。

mkdir -p /root/mongo/data
mkdir -p /root/mongo/conf
mkdir -p /root/mongo/log

ファイルを作成します。

cd /root/mongo/conf
vim mongodb.conf
#端口
port=27017
#数据库文件存放目录
dbpath=/root/mongo/data
#日志文件存放路径
logpath=/root/mongo/log
#使用追加方式写日志
logappend=true
#以守护线程的方式运行,创建服务器进程
fork=true
#最大同时连接数
maxConns=100
#不启用验证
#noauth=true
#每次写入会记录一条操作日志
journal=true
#存储引擎有mmapv1、wiredTiger、mongorocks
storageEngine=wiredTiger
#访问IP
bind_ip=0.0.0.0
#用户验证
#auth=true

上記のパスと接続構成のパスはカスタマイズ可能であり、必要に応じて構成が調整されていることに注意してください。

4. mongo コンテナー (構成ファイルとデータを外部マウント) を実行して、データ ボリュームをマウントします。

docker run -d \
--name mongodb  \
-p 27017:27017 \
-v /root/mongo/data:/data/db \
-v /root/mongo/conf:/data/conf \
-v /root/mongo/log:/data/log \
-e MONGO_INITDB_ROOT_USERNAME=admin \
-e MONGO_INITDB_ROOT_PASSWORD=123456 \
--privileged=true \
--restart always \
mongo:4.2

このコードは、Docker で「mongodb」という名前のコンテナーを実行し、それをローカル ホストのポート 27017 にマップするために使用されます。コンテナーのデータ、構成、およびログ ディレクトリは、ローカルの /root/mongo/data、/data/conf、および /data/log ディレクトリに割り当てられます。

同時に、コンテナーは 2 つの環境変数 MONGO_INITDB_ROOT_USERNAME と MONGO_INITDB_ROOT_password も設定し、それぞれ「admin」と「123456」に設定します。これらの環境変数は、MongoDB の初期データベース設定のためにコンテナ内で使用できます。

さらに、コンテナーは特権モード (--privileged=true) も使用します。これにより、コンテナーはより多くのシステム権限を持つことができます。最後に、 --restart always オプションが使用されます。これは、コンテナーが終了後に常に自動的に再起動することを意味します。

要約すると、このコードの機能は、Docker で「mongodb」という名前の MongoDB コンテナーを実行し、それをローカル ホストのポート 27017 にマップし、コンテナーのデータ、構成、およびログ ディレクトリをローカルの /root/mongo にマップすることです。 /data、/data/conf、/data/log ディレクトリに移動し、MongoDB の初期データベース ユーザー名とパスワードを設定します。コンテナは特権モードを使用し、常に自動的に再起動します。

注: ユーザーとパスワードの行は必要ありません。これなしでどうやってこれを行うことができますか

-e MONGO_INITDB_ROOT_USERNAME=管理者 \
-e MONGO_INITDB_ROOT_PASSWORD=123456 \

これら 2 行のコードを削除するだけです。

5. 正常に動作しているか確認する 

docker ps -a

6. 視覚化ツールを使用して接続を試みます - アカウントのパスワードを使用します

アカウントパスワード接続方式を使用します。

 以下にユーザー名とパスワードを入力してください。

おすすめ

転載: blog.csdn.net/weixin_72186894/article/details/132054891
おすすめ