CentOS9 MongoDB6をインストールする

CentOS9に、MongoDB6をインストールするまでの手順を記述してます。repoファイルを作成してインストールを実行します。ここではインストール後にユーザーの作成など簡単なコマンドの実行方法も記載してます。
環境
- OS CentOS Stream release 9
事前準備
repoファイルを、以下の内容で作成しておきます。
$ sudo tee /etc/yum.repos.d/mongodb-org-6.0.repo<<EOF
[mongodb-org-6.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/8/mongodb-org/6.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-6.0.asc
EOF
MongoDBインストール
MongoDBのインストールを行います。GPGキーのインポートは「y」を選択します。
$ sudo dnf install mongodb-org
GPG 鍵 0x64C3C388 をインポート中:
Userid : "MongoDB 6.0 Release Signing Key <packaging@mongodb.com>"
Fingerprint: 39BD 841E 4BE5 FB19 5A65 400E 6A26 B1AE 64C3 C388
From : https://www.mongodb.org/static/pgp/server-6.0.asc
これでよろしいですか? [y/N]: y
バージョンを確認します。
$ mongod --version
db version v6.0.0
Build Info: {
"version": "6.0.0",
"gitVersion": "e61bf27c2f6a83fed36e5a13c008a32d563babe2",
"openSSLVersion": "OpenSSL 1.1.1k 25 Mar 2021",
"modules": [],
"allocator": "tcmalloc",
"environment": {
"distmod": "rhel80",
"distarch": "x86_64",
"target_arch": "x86_64"
}
}
MongoDB起動
起動します。
$ sudo systemctl start mongod
自動起動も設定する場合は「enable」を指定します。
$ sudo systemctl enable mongod
ステータスは以下で確認できます。
$ sudo systemctl status mongod
● mongod.service - MongoDB Database Server
Loaded: loaded (/usr/lib/systemd/system/mongod.service; enabled; vendor preset: disabled)
Active: active (running) since Tue 2022-08-23 17:20:28 JST; 3min 39s ago
Docs: https://docs.mongodb.org/manual
Process: 93101 ExecStartPre=/usr/bin/mkdir -p /var/run/mongodb (code=exited, status=0/SUCCESS)
Process: 93102 ExecStartPre=/usr/bin/chown mongod:mongod /var/run/mongodb (code=exited, status=0/SUCCESS)
Process: 93103 ExecStartPre=/usr/bin/chmod 0755 /var/run/mongodb (code=exited, status=0/SUCCESS)
Process: 93104 ExecStart=/usr/bin/mongod $OPTIONS (code=exited, status=0/SUCCESS)
Main PID: 93106 (mongod)
Memory: 72.5M
CPU: 1.774s
CGroup: /system.slice/mongod.service
└─93106 /usr/bin/mongod -f /etc/mongod.conf
再起動は「restart」を使用します。
$ sudo systemctl restart mongod
ログは、以下の場所にあり、「tail」コマンドなどで確認できます。
$ sudo tail /var/log/mongodb/mongod.log
ユーザー認証設定
「/etc/mongod.conf」で「authorization」を「enabled」に設定します。
$ sudo nano /etc/mongod.conf
<編集>
security:
authorization: enabled

再起動して設定を反映させます。
$ sudo systemctl restart mongod
ユーザー作成
ユーザーを作成します。
$ mongosh
test> use admin
switched to db admin
> db.createUser(
{
user: "testuser",
pwd: passwordPrompt(), // or cleartext password
roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ]
}
)
Enter password: (パスワードを設定)
画像

一度抜けます。
> exit
bye
作成したユーザーでログインします。
$ mongosh -u testuser -p --authenticationDatabase admin
Enter password: ***
Current Mongosh Log ID: 62ff2a2046a31f802505e79c
Connecting to: mongodb://<credentials>@127.0.0.1:27017/?directConnection=true&serverSelectionTimeoutMS=2000&authSource=admin&appName=mongosh+1.5.4
Using MongoDB: 6.0.0
Using Mongosh: 1.5.4
For mongosh info see: https://docs.mongodb.com/mongodb-shell/
これで、ユーザーが作成されたことが確認できます。
外部接続
外部からの接続を可能にするには「mongod.conf」に外部から参照できる自身のIPアドレスなどを追加します。
# network interfaces
net:
port: 27017
bindIp: 127.0.0.1,192.168.100.100
firewallの設定も忘れないようにしておきます。
$ sudo firewall-cmd --add-port=27017/tcp --permanent
$ sudo firewall-cmd --reload
-
前の記事
Rust 文字列を区切り文字を含んで区切り文字で分割する 2022.09.09
-
次の記事
ubuntu nautilusでヘルプを開くショートカットキー 2022.09.09
コメントを書く