CentOS7にMongoDBをインストールして構成する方法
この記事では、CentOS 7にMongoDBをインストールして構成する方法を学習します。MongoDBはオープンソースで無料のデータベース(NoSQLデータベース)です。つまり、ドキュメント指向のデータベースであり、次のようなドキュメントを保存します。構造的にJSON(MongoDBではBSONと呼ばれます)に似ており、高い可用性、パフォーマンス、自動スケーリングを備えています。 RDBMSとは異なり、データベーステーブルにデータを追加するために事前定義されたデータベーススキーマは必要ありません。既存のスキーマを乱すことなく、いつでもスキーマを変更できます。
前提条件
- LinuxMachineにインストールされたCentos7。
- rootユーザー権限を持つユーザー。
MongoDBリポジトリの追加
デフォルトでは、MongoDBリポジトリはCentOS 7リポジトリにないため、MongoDBリポジトリをローカルマシンに追加する必要がありました。
# vi /etc/yum.repos.d/mongodb-org.repo Output: [mongodb-org-3.2] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/ gpgcheck=1 enabled=1gpgkey=https://www.mongodb.org/static/pgp/server-3.2.asc
MongoDBリポジトリをローカルマシンに追加したら、yumがリポジトリ情報をプルチェックするようにシステムを作成します。
# yum update Output: Loaded plugins: fastestmirror base | 3.6 kB 00:00 extras | 3.4 kB 00:00 mongodb-org-3.2 | 2.5 kB 00:00 updates | 3.4 kB 00:00 mongodb-org-3.2/7/primary_db | 54 kB 00:01 Determining fastest mirrors * base: mirror.dhakacom.com * extras: mirror.dhakacom.com * updates: mirror.dhakacom.com No packages marked for update
MongoDBのインストール
ローカルマシンでリポジトリの詳細が更新されたので、yumコマンドを使用してMongoDBをインストールします。
以下は、MongoDBをインストールするためのコマンドです。
# yum install mongodb-org Output: Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirror.dhakacom.com * extras: mirror.dhakacom.com * updates: mirror.dhakacom.com Resolving Dependencies --> Running transaction check ---> Package mongodb-org.x86_64 0:3.2.11-1.el7 will be installed … … … ---> Package mongodb-org-mongos.x86_64 0:3.2.11-1.el7 will be installed ---> Package mongodb-org-server.x86_64 0:3.2.11-1.el7 will be installed ---> Package mongodb-org-shell.x86_64 0:3.2.11-1.el7 will be installed ---> Package mongodb-org-tools.x86_64 0:3.2.11-1.el7 will be installed --> Finished Dependency Resolution Dependencies Resolved ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: mongodb-org x86_64 3.2.11-1.el7 mongodb-org-3.2 5.8 k Installing for dependencies: mongodb-org-mongos x86_64 3.2.11-1.el7 mongodb-org-3.2 5.6 M mongodb-org-server x86_64 3.2.11-1.el7 mongodb-org-3.2 12 M mongodb-org-shell x86_64 3.2.11-1.el7 mongodb-org-3.2 6.7 M mongodb-org-tools x86_64 3.2.11-1.el7 mongodb-org-3.2 41 M Transaction Summary ================================================================================ Install 1 Package (+4 Dependent packages) Total download size: 66 M Installed size: 201 M Is this ok [y/d/N]:y Downloading packages: warning: /var/cache/yum/x86_64/7/mongodb-org-3.2/packages/mongodb-org-3.2.11-1.el7.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID ea312927: NOKEY Public key for mongodb-org-3.2.11-1.el7.x86_64.rpm is not installed (1/5): mongodb-org-3.2.11-1.el7.x86_64.rpm | 5.8 kB 00:01 (2/5): mongodb-org-mongos-3.2.11-1.el7.x86_64.rpm | 5.6 MB 00:01 (3/5): mongodb-org-shell-3.2.11-1.el7.x86_64.rpm | 6.7 MB 00:00 (4/5): mongodb-org-server-3.2.11-1.el7.x86_64.rpm | 12 MB 00:06 (5/5): mongodb-org-tools-3.2.11-1.el7.x86_64.rpm | 41 MB 00:06 -------------------------------------------------------------------------------- Total 7.3 MB/s | 66 MB 00:08 Retrieving key from https://www.mongodb.org/static/pgp/server-3.2.asc Importing GPG key 0xEA312927: Userid : "MongoDB 3.2 Release Signing Key <[email protected]>" Fingerprint: 42f3 e95a 2c4f 0827 9c49 60ad d68f a50f ea31 2927 From : https://www.mongodb.org/static/pgp/server-3.2.asc Is this ok [y/N]:y Running transaction check Running transaction test Transaction test succeeded Running transaction Installing : mongodb-org-server-3.2.11-1.el7.x86_64 1/5 Installing : mongodb-org-mongos-3.2.11-1.el7.x86_64 2/5 Installing : mongodb-org-tools-3.2.11-1.el7.x86_64 3/5 Installing : mongodb-org-shell-3.2.11-1.el7.x86_64 4/5 Installing : mongodb-org-3.2.11-1.el7.x86_64 5/5 Verifying : mongodb-org-shell-3.2.11-1.el7.x86_64 1/5 Verifying : mongodb-org-tools-3.2.11-1.el7.x86_64 2/5 Verifying : mongodb-org-mongos-3.2.11-1.el7.x86_64 3/5 Verifying : mongodb-org-server-3.2.11-1.el7.x86_64 4/5 Verifying : mongodb-org-3.2.11-1.el7.x86_64 5/5 Installed: mongodb-org.x86_64 0:3.2.11-1.el7 Dependency Installed: mongodb-org-mongos.x86_64 0:3.2.11-1.el7 mongodb-org-server.x86_64 0:3.2.11-1.el7 mongodb-org-shell.x86_64 0:3.2.11-1.el7 mongodb-org-tools.x86_64 0:3.2.11-1.el7 Complete!
MongoDDがインストールされたら、MongoDBサービスを開始します。
以下は、MongoDBサービスを開始するためのコマンドです–
# systemctl start mongod
以下のコマンドを実行して、MongoDBサービスのステータスを確認します。
# systemctl status mongod Output: mongod.service - SYSV: Mongo is a scalable, document-oriented database. Loaded: loaded (/etc/rc.d/init.d/mongod) Active: active (running) since Fri 2016-11-25 14:09:25 IST; 12s ago Docs: man:systemd-sysv-generator(8) Process: 9901 ExecStart=/etc/rc.d/init.d/mongod start (code=exited, status=0/SUCCESS) CGroup: /system.slice/mongod.service └─9912 /usr/bin/mongod -f /etc/mongod.conf Nov 25 14:09:25 localhost.localdomain systemd[1]: Starting SYSV: Mongo is a s... Nov 25 14:09:25 localhost.localdomain runuser[9908]: pam_unix(runuser:session... Nov 25 14:09:25 localhost.localdomain runuser[9908]: pam_unix(runuser:session... Nov 25 14:09:25 localhost.localdomain mongod[9901]: Starting mongod: [ OK ] Nov 25 14:09:25 localhost.localdomain systemd[1]: Started SYSV: Mongo is a sc...Hint: Some lines were ellipsized, use -l to show in full.
MongoDB構成をリロードします
# systemctl reload mongod
MongoDBサービスを停止します
# systemctl stop mongod
MongoDBのプロセス数の構成
デフォルトでは、Mongoを実行すると、プロセスの数が4096に少なすぎるため、MongoDBは以下のエラーを表示します–
# mongo Output: MongoDB shell version: 3.2.11 connecting to: test Welcome to the MongoDB shell. For interactive help, type "help". For more comprehensive documentation, see https://docs.mongodb.org/ Questions? Try the support group https://groups.google.com/group/mongodb-user Server has startup warnings: 2016-11-25T14:09:25.553+0530 I CONTROL [initandlisten] ** WARNING: soft rlimits too low. rlimits set to 4096 processes, 64000 files. Number of processes should be at least 32000 : 0.5 times number of files. 2016-11-25T14:09:25.553+0530 I CONTROL [initandlisten]
プロセスの数を修正するには、「/ etc / security /Limits.d/」にあるファイル「20-nproc.conf」を編集する必要がありました
# vi /etc/security/limits.d/20-nproc.conf Output: # Default limit for number of user's processes to prevent # accidental fork bombs. # See rhbz #432903 for reasoning. * soft nproc 4096 root soft nproc unlimited
4096を32000に変更する必要がありました
* soft nproc 32000
値を32000に変更したら、MongoDBサービスを再起動する必要がありました。以下は、MongoDBサービスを再起動するコマンドです。
# systemctl restart mongod
MongoDB管理者ユーザーの作成
ここでは、ユーザー名adminとパスワード「password123」のユーザーを1人作成します。ユーザーを作成したら、データベース内のユーザーリストを確認します。
# mongo Output: MongoDB shell version: 3.2.11 connecting to: test > use admin switched to db admin > db.createUser( ... { ... user: "admin", ... pwd: "password123", ... roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] ... } ... ) Successfully added user: { "user" : "admin", "roles" : [ { "role" : "userAdminAnyDatabase", "db" : "admin" } ] } > show users; { "_id" : "admin.admin", "user" : "admin", "db" : "admin", "roles" : [ { "role" : "userAdminAnyDatabase", "db" : "admin" } ] } >
この記事では、MongoDBリポジトリをローカルマシンに追加してMongoDBをインストールする方法を学びました。また、noを変更または増やす方法についても学びました。 MongoDB構成での4096から32000までのプロセスの概要と、管理ユーザーの作成方法。
-
CentOSをRaspberryPiにインストールする方法
市場で最も人気のあるシングルボードコンピューターの1つとして、RaspberryPiはほとんどのLinuxユーザーの家庭の主力製品です。ホームサーバーアプリケーション、子供向けのコンピューター、Linuxの学習、その他のスキルのいずれであっても、Piの用途を確実に見つけることができます。ホームサーバーとしての人気を踏まえ、CentOSをRaspberryPiにインストールして堅固なホームサーバーを作成する方法を紹介します。 CentOSイメージの取得 CentOSプロジェクトの特定のRaspberryPiイメージは、ダウンロードページに少し隠されています。最高のエクスペリエンスを得るには、C
-
Mac に MongoDB を簡単かつ迅速にインストールする方法
MongoDB Mac をインストールする方法 ?もう 1 つの NoSQL サーバーである MongoDB は、現在最も使用されています。これは、MongoDB 内のコンテンツが表形式全体で保存されるだけでなく取得されることもないため、単なる NoSQL (SQL だけでなく) データベース以上のものとして分類されているようです。これにより、実際に MongoDB の広範な概要が得られます。この投稿を通して、MongoDB を Mac の作業環境にインストールする方法について説明します。 パート 1. Mac に MongoDB をインストールするための要件 MongoDB は、NoSQ