MongoDBは、最新の動的アプリの開発に使用される、オブジェクト指向のスキーマレスのNoSQLデータベースサーバーです。これは、行と列が使用される従来のリレーショナルデータベースとは異なり、データオブジェクトがコレクションに個別のドキュメントとして格納されることを意味します。 MongoDBを使用すると、結合を必要とせずにネストされたデータオブジェクトをすばやくトラバースできるため、パフォーマンスが大幅に向上します。
MongoDBは、開発者に簡単なクエリとインデックス作成を提供する大規模なスケーラビリティと柔軟性のためにC++で記述されています。また、複雑なドキュメントベースのデータセットのクエリを簡単にする集約フレームワークも提供します。
MongoDBには、豊かで活気のあるコミュニティがあり、MapReduce、自動シャーディングなどの豊富で強力な組み込み機能を提供します。
MongoDBは、Linux、Windows、Solaris、Mac OS Xなどのすべての主要なオペレーティングシステムプラットフォームで実行されます。また、Red Hat Enterprise Linux(RHEL)、CentOS、Ubuntuなどの多くのディストリビューションもサポートしています。
このチュートリアルでは、MongoDBNoSQLデータベースをRockyLinux8にインストールする方法について説明します。
- 10GB以上の空きディスク容量を備えたRockyLinux8を実行している新しいサーバー
- サーバーでsudo権限が設定されているroot以外のユーザー
特権構成に応じてrootまたはsudoユーザーを使用してシステムにログインし、次のコマンドを使用してシステムを更新します。
sudo dnf update -y
MongoDBのインストール
MongoDBパッケージは、「ベース」システムの一部とは見なされないため、RockyLinux8のデフォルトのリポジトリには含まれていません。したがって、MongoDBをインストールする前に、パッケージを含むリポジトリを追加する必要があります。
MongoDBには、コミュニティエディションとエンタープライズエディションの2つのエディションがあります。コミュニティエディションは無料ですが、エンタープライズエディションは追加機能を提供します。このガイドはコミュニティ版を対象としています。
次のコマンドを実行して、システムにMongoDBリポジトリを追加します。
cat > /etc/yum.repos.d/mongodb.repo << 'EOL'
[mongodb-org-4.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc
EOL
リポジトリが有効になったら、次のコマンドを実行してmongoDBコミュニティエディションをインストールします。
sudo dnf update
sudo dnf install mongodb-org
インストールが完了したら、次のようにインストールされているバージョンを確認します。
mongod --version
MongoDBサービスは、インストール後に自動的に開始されません。次のようにコマンドを実行することで、これを確認できます。
sudo systemctl status mongod
出力は次のようになります。
サービスが開始されていないため、次のコマンドを実行して手動で開始します。
sudo systemctl start mongodb
起動時にMongoDBを自動的に起動できるようにするには、次のコマンドを実行します。
sudo systemctl enable mongodb
この時点で、MongoDBがサーバーにインストールおよび構成されています。次のようにMongoDBサービスのステータスを確認します。
sudo systemctl status mongod
MongoDBの実行
MongoDBサービスは、デーモンmongodとして実行されます。 mongodプロセスは、root以外のユーザーとしてバックグラウンドで実行されます。 MongoDBは/var / lib / mongoを使用します デフォルトのデータディレクトリとして、 / var / log / mongodb 情報を記録するため。
MongoDBが正しく実行されていないと思われる場合は、ログファイルでエラーを確認できます。
tail /var/log/mongodb/mongod.log
MongoDBの準備ができており、接続を待機していることを示す行が表示されるはずです。
MongoDBは、データを直接操作できるシェルインターフェイスを提供します。
MongoDBシェルにアクセスするには、サーバー上の任意のターミナルセッションから次のコマンドを実行します。
mongo
シェルインターフェイスから、以下のコマンドを実行して、システムに現在存在するデータベースを表示できます。デフォルトでは、MongoDBはtestというデータベースを提供します。
db
新しいMongoDBデータベースを作成するには、新しいデータベースの名前でuseコマンドを使用して、0を新しいデータベースに切り替えます。 test-dbというデータベースを作成します
use test-db
新しいデータベースにデータを挿入するには、サーバー上の任意のターミナルセッションから次のコマンドを実行します。次のコマンドは、ドキュメントのコレクション(MongoDBのデータ構造)を作成します。
db.linux.insertOne(
{ "ubuntu" : "20.04",
"centos" : "8",
"debian" : "10"
}
)
Enterを押します データを挿入します。
データベース内のドキュメントを表示するには
show collections
データベースコレクションの内容を表示するには、次のコマンドを実行します
db.linux.find()
読み取り/書き込み権限を持つusecalladminを作成します。
db.createUser(
{
user: 'admin ',
pwd: '[email protected]',
roles: [ { role: 'readWrite', db: 'test-db' } ]
}
);
Enterを押します 新しいユーザーを追加するには
すべてのユーザーを一覧表示
db.getUsers()
MongoDBデータベースを終了するには
exit
このガイドでは、Rocky Linux 8にMongoDBをインストールして構成しました。また、dnfコマンドを使用してMongoDBをインストールする方法、MongoDBサービスの開始、停止、有効化、ステータスの確認、およびMongoShellインターフェイスを使用した実行方法についても説明しました。 MongoDBデータベースと対話するためのコマンド。このガイドがお役に立てば幸いです。