目錄
- 什么是MongoDB?:
- 環境規格:
- CentOS 8中安裝MongoDB Yum存盤庫:
- CentOS 8中為MongoDB設定資源限制:
- 在CentOS 8上安裝MongoDB資料庫:
- CentOS 8上為MongoDB創建SELinux策略:
- MongoDB中創建管理員用戶:
- MongoDB服務器中啟用訪問控制:
- 配置MongoDB服務以進行網路訪問:
- MongoDB資料和日志目錄:
- 結論:
? 
MongoDB是一個面向檔案的開源NoSQL資料庫管理系統,在本文中,您將學習如何在CentOS 8服務器上安裝MongoDB,
什么是MongoDB?:
MongoDB是一個開源,跨平臺,面向檔案的資料庫管理系統,MongoDB是NoSQL(不僅是SQL)資料庫軟體,MongoDB使用帶有模式的檔案之類的JSON(JavaScript物件表示法),MongoDB由MongoDB Inc開發,并根據SSPL(服務器端公共許可證)進行分發,
雖然,我們在CentOS 8上安裝了MongoDB 4.2,但是相同的程序將適用于CentOS 7,RHEL 7,RHEL 8和類似的發行版,
環境規格:
- CPU :3.4 GHz(2核)
- 記憶體:2 GB
- 儲存空間:20 GB
- 作業系統:CentOS 8.2
- 主機名:mongodb.lianglab.cn
- IP地址:192.168.6.160/24
- 軟體版本:MongoDB 4.4
CentOS 8中安裝MongoDB Yum存盤庫:
我們可以從MongoDB下載頁面下載所需的安裝包,
這里是可以直接下載,我們需要的rpm包 https://repo.mongodb.org/yum/redhat/8/mongodb-org/4.4/x86_64/RPMS/mongodb-org-server-4.4.2-1.el8.x86_64.rpm
在這里,您可以選擇所需的MongoDB版本以及目標作業系統,該網站將為您提供指向相應安裝軟體包的下載鏈接,然后,您可以使用dnf命令下載該RPM軟體包并將其安裝在CentOS 8服務器上,

但是,有更好的方法在CentOS 8服務器上安裝MongoDB,即在CentOS 8中安裝MongoDB官方yum存盤庫,然后使用dnf命令安裝MongoDB ,并且在本安裝指南中使用相同的方法,
通過使用[ssh客戶端,]以root用戶身份與mongodb-01.centlinux.com連接,
在/etc/yum.repo.d目錄中創建一個回購檔案,以在CentOS 8服務器中安裝MongoDB yum存盤庫,
[root@mongodb ~]# hostnamectl set-hostname mongodb.lianglab.cn
[root@mongodb ~]# vi /etc/yum.repos.d/mongodb-org-4.4.repo
并在此檔案中添加以下配置,
[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
為MongoDB yum存盤庫構建快取,
[root@mongodb ~]# dnf clean all
39 files removed
[root@mongodb ~]# dnf makecache
CentOS-8 - Base - mirrors.tongdun.cn 45 MB/s | 2.2 MB 00:00
CentOS-8 - Extras - mirrors.tongdun.cn 482 kB/s | 8.6 kB 00:00
CentOS-8 - AppStream - mirrors.tongdun.cn 56 MB/s | 5.8 MB 00:00
Extra Packages for Enterprise Linux 8 - x86_64 66 MB/s | 8.4 MB 00:00
Extra Packages for Enterprise Linux 8 - x86_64 - Debug 54 MB/s | 3.6 MB 00:00
Extra Packages for Enterprise Linux 8 - x86_64 - Source 43 MB/s | 1.8 MB 00:00
MongoDB Repository 9.5 kB/s | 12 kB 00:01
Metadata cache created.
[root@mongodb ~]# dnf repolist
repo id repo name
AppStream CentOS-8 - AppStream - mirrors.tongdun.cn
base CentOS-8 - Base - mirrors.tongdun.cn
epel Extra Packages for Enterprise Linux 8 - x86_64
epel-debuginfo Extra Packages for Enterprise Linux 8 - x86_64 - Debug
epel-source Extra Packages for Enterprise Linux 8 - x86_64 - Source
extras CentOS-8 - Extras - mirrors.tongdun.cn
mongodb-org-4.4 MongoDB Repository
[root@mongodb ~]#
我們已經在CentOS 8服務器中安裝了MongoDB yum存盤庫,
CentOS 8中為MongoDB設定資源限制:
我們需要根據MongoDB軟體的要求在CentOS 8服務器中設定資源限制,
為此,請為MongoDB創建資源限制組態檔,如下所示,
[root@mongodb-01 ~]# vi /etc/security/limits.d/mongod.conf
并在其中添加以下資源限制,
mongod soft nproc 64000
mongod hard nproc 64000
mongod soft nofile 64000
mongod hard nofile 64000
在CentOS 8上安裝MongoDB資料庫:
我們可以從新添加的yum存盤庫在CentOS 8服務器上安裝MongoDB,
我們正在使用以下dnf命令安裝MongoDB服務器的最新穩定版本,
[root@mongodb ~]# dnf list -y mongodb-org
Last metadata expiration check: 0:02:10 ago on Fri 18 Dec 2020 11:12:48 PM CST.
Available Packages
mongodb-org.x86_64 4.4.2-1.el8 mongodb-org-4.4
[root@mongodb ~]# dnf install -y mongodb-org
Last metadata expiration check: 0:02:50 ago on Fri 18 Dec 2020 11:12:48 PM CST.
Dependencies resolved.
========================================================================================================================================================================
Package Architecture Version Repository Size
========================================================================================================================================================================
Installing:
mongodb-org x86_64 4.4.2-1.el8 mongodb-org-4.4 10 k
Installing dependencies:
mongodb-database-tools x86_64 100.2.1-1 mongodb-org-4.4 55 M
mongodb-org-database-tools-extra x86_64 4.4.2-1.el8 mongodb-org-4.4 20 k
mongodb-org-mongos x86_64 4.4.2-1.el8 mongodb-org-4.4 22 M
mongodb-org-server x86_64 4.4.2-1.el8 mongodb-org-4.4 28 M
mongodb-org-shell x86_64 4.4.2-1.el8 mongodb-org-4.4 18 M
mongodb-org-tools x86_64 4.4.2-1.el8 mongodb-org-4.4 10 k
python2 x86_64 2.7.17-1.module_el8.2.0+381+9a5b3c3b AppStream 108 k
python2-libs x86_64 2.7.17-1.module_el8.2.0+381+9a5b3c3b AppStream 6.0 M
python2-pip-wheel noarch 9.0.3-16.module_el8.2.0+381+9a5b3c3b AppStream 1.2 M
python2-setuptools-wheel noarch 39.0.1-11.module_el8.2.0+381+9a5b3c3b AppStream 289 k
Installing weak dependencies:
python2-pip noarch 9.0.3-16.module_el8.2.0+381+9a5b3c3b AppStream 1.9 M
python2-setuptools noarch 39.0.1-11.module_el8.2.0+381+9a5b3c3b AppStream 643 k
Enabling module streams:
python27 2.7
Transaction Summary
========================================================================================================================================================================
Install 13 Packages
Total download size: 133 M
Installed size: 421 M
Downloading Packages:
(1/13): python2-2.7.17-1.module_el8.2.0+381+9a5b3c3b.x86_64.rpm 6.0 MB/s | 108 kB 00:00
(2/13): python2-pip-wheel-9.0.3-16.module_el8.2.0+381+9a5b3c3b.noarch.rpm 26 MB/s | 1.2 MB 00:00
(3/13): python2-pip-9.0.3-16.module_el8.2.0+381+9a5b3c3b.noarch.rpm 21 MB/s | 1.9 MB 00:00
(4/13): python2-setuptools-39.0.1-11.module_el8.2.0+381+9a5b3c3b.noarch.rpm 15 MB/s | 643 kB 00:00
(5/13): python2-setuptools-wheel-39.0.1-11.module_el8.2.0+381+9a5b3c3b.noarch.rpm 15 MB/s | 289 kB 00:00
(6/13): python2-libs-2.7.17-1.module_el8.2.0+381+9a5b3c3b.x86_64.rpm 37 MB/s | 6.0 MB 00:00
(7/13): mongodb-org-database-tools-extra-4.4.2-1.el8.x86_64.rpm 35 kB/s | 20 kB 00:00
(8/13): mongodb-org-4.4.2-1.el8.x86_64.rpm 11 kB/s | 10 kB 00:00
(9/13): mongodb-org-mongos-4.4.2-1.el8.x86_64.rpm 3.4 MB/s | 22 MB 00:06
(10/13): mongodb-org-server-4.4.2-1.el8.x86_64.rpm 3.6 MB/s | 28 MB 00:07
(11/13): mongodb-org-tools-4.4.2-1.el8.x86_64.rpm 35 kB/s | 10 kB 00:00
(12/13): mongodb-org-shell-4.4.2-1.el8.x86_64.rpm 3.9 MB/s | 18 MB 00:04
(13/13): mongodb-database-tools-100.2.1.x86_64.rpm 3.9 MB/s | 55 MB 00:14
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total 9.2 MB/s | 133 MB 00:14
warning: /var/cache/dnf/mongodb-org-4.4-cef71e585db45e10/packages/mongodb-database-tools-100.2.1.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID 90cfb1f5: NOKEY
MongoDB Repository 885 B/s | 1.6 kB 00:01
Importing GPG key 0x90CFB1F5:
Userid : "MongoDB 4.4 Release Signing Key <[email protected]>"
Fingerprint: 2069 1EEC 3521 6C63 CAF6 6CE1 6564 08E3 90CF B1F5
From : https://www.mongodb.org/static/pgp/server-4.4.asc
Key imported successfully
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : mongodb-org-shell-4.4.2-1.el8.x86_64 1/13
Installing : mongodb-org-mongos-4.4.2-1.el8.x86_64 2/13
Installing : mongodb-org-database-tools-extra-4.4.2-1.el8.x86_64 3/13
Running scriptlet: mongodb-database-tools-100.2.1-1.x86_64 4/13
Installing : mongodb-database-tools-100.2.1-1.x86_64 4/13
Running scriptlet: mongodb-database-tools-100.2.1-1.x86_64 4/13
Installing : mongodb-org-tools-4.4.2-1.el8.x86_64 5/13
Installing : python2-setuptools-wheel-39.0.1-11.module_el8.2.0+381+9a5b3c3b.noarch 6/13
Installing : python2-pip-wheel-9.0.3-16.module_el8.2.0+381+9a5b3c3b.noarch 7/13
Installing : python2-libs-2.7.17-1.module_el8.2.0+381+9a5b3c3b.x86_64 8/13
Installing : python2-pip-9.0.3-16.module_el8.2.0+381+9a5b3c3b.noarch 9/13
Installing : python2-setuptools-39.0.1-11.module_el8.2.0+381+9a5b3c3b.noarch 10/13
Installing : python2-2.7.17-1.module_el8.2.0+381+9a5b3c3b.x86_64 11/13
Running scriptlet: python2-2.7.17-1.module_el8.2.0+381+9a5b3c3b.x86_64 11/13
Running scriptlet: mongodb-org-server-4.4.2-1.el8.x86_64 12/13
Installing : mongodb-org-server-4.4.2-1.el8.x86_64 12/13
Running scriptlet: mongodb-org-server-4.4.2-1.el8.x86_64 12/13
Created symlink /etc/systemd/system/multi-user.target.wants/mongod.service → /usr/lib/systemd/system/mongod.service.
Installing : mongodb-org-4.4.2-1.el8.x86_64 13/13
Running scriptlet: mongodb-org-4.4.2-1.el8.x86_64 13/13
Verifying : python2-2.7.17-1.module_el8.2.0+381+9a5b3c3b.x86_64 1/13
Verifying : python2-libs-2.7.17-1.module_el8.2.0+381+9a5b3c3b.x86_64 2/13
Verifying : python2-pip-9.0.3-16.module_el8.2.0+381+9a5b3c3b.noarch 3/13
Verifying : python2-pip-wheel-9.0.3-16.module_el8.2.0+381+9a5b3c3b.noarch 4/13
Verifying : python2-setuptools-39.0.1-11.module_el8.2.0+381+9a5b3c3b.noarch 5/13
Verifying : python2-setuptools-wheel-39.0.1-11.module_el8.2.0+381+9a5b3c3b.noarch 6/13
Verifying : mongodb-database-tools-100.2.1-1.x86_64 7/13
Verifying : mongodb-org-4.4.2-1.el8.x86_64 8/13
Verifying : mongodb-org-database-tools-extra-4.4.2-1.el8.x86_64 9/13
Verifying : mongodb-org-mongos-4.4.2-1.el8.x86_64 10/13
Verifying : mongodb-org-server-4.4.2-1.el8.x86_64 11/13
Verifying : mongodb-org-shell-4.4.2-1.el8.x86_64 12/13
Verifying : mongodb-org-tools-4.4.2-1.el8.x86_64 13/13
Installed products updated.
Installed:
mongodb-database-tools-100.2.1-1.x86_64 mongodb-org-4.4.2-1.el8.x86_64
mongodb-org-database-tools-extra-4.4.2-1.el8.x86_64 mongodb-org-mongos-4.4.2-1.el8.x86_64
mongodb-org-server-4.4.2-1.el8.x86_64 mongodb-org-shell-4.4.2-1.el8.x86_64
mongodb-org-tools-4.4.2-1.el8.x86_64 python2-2.7.17-1.module_el8.2.0+381+9a5b3c3b.x86_64
python2-libs-2.7.17-1.module_el8.2.0+381+9a5b3c3b.x86_64 python2-pip-9.0.3-16.module_el8.2.0+381+9a5b3c3b.noarch
python2-pip-wheel-9.0.3-16.module_el8.2.0+381+9a5b3c3b.noarch python2-setuptools-39.0.1-11.module_el8.2.0+381+9a5b3c3b.noarch
python2-setuptools-wheel-39.0.1-11.module_el8.2.0+381+9a5b3c3b.noarch
Complete!
啟用并啟動MongoDB資料庫服務,
[root@mongodb ~]# systemctl enable --now mongod.service
[root@mongodb ~]#
成功啟動后,檢查MongoDB的服務狀態和埠監聽資訊
[root@mongodb ~]# systemctl status mongod.service
● mongod.service - MongoDB Database Server
Loaded: loaded (/usr/lib/systemd/system/mongod.service; enabled; vendor preset: disabled)
Active: active (running) since Fri 2020-12-18 23:17:49 CST; 16s ago
Docs: https://docs.mongodb.org/manual
Process: 930807 ExecStart=/usr/bin/mongod $OPTIONS (code=exited, status=0/SUCCESS)
Process: 930804 ExecStartPre=/usr/bin/chmod 0755 /var/run/mongodb (code=exited, status=0/SUCCESS)
Process: 930802 ExecStartPre=/usr/bin/chown mongod:mongod /var/run/mongodb (code=exited, status=0/SUCCESS)
Process: 930800 ExecStartPre=/usr/bin/mkdir -p /var/run/mongodb (code=exited, status=0/SUCCESS)
Main PID: 930809 (mongod)
Memory: 57.7M
CGroup: /system.slice/mongod.service
└─930809 /usr/bin/mongod -f /etc/mongod.conf
Dec 18 23:17:48 mongodb.lianglab.cn systemd[1]: Starting MongoDB Database Server...
Dec 18 23:17:48 mongodb.lianglab.cn mongod[930807]: about to fork child process, waiting until server is ready for connections.
Dec 18 23:17:48 mongodb.lianglab.cn mongod[930807]: forked process: 930809
Dec 18 23:17:49 mongodb.lianglab.cn mongod[930807]: child process started successfully, parent exiting
Dec 18 23:17:49 mongodb.lianglab.cn systemd[1]: Started MongoDB Database Server
[root@mongodb ~]# netstat -anplt| grep mongod
tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN 930809/mongod
[root@mongodb ~]# ss -anplt | grep mongod
LISTEN 0 128 127.0.0.1:27017 0.0.0.0:* users:(("mongod",pid=930809,fd=12))

CentOS 8上為MongoDB創建SELinux策略:
根據MongoDB檔案,如果您已將SELinux配置為強制模式,則必須為MongoDB創建SELinux策略,
檢查當前的SELinux模式,
[root@mongodb ~]# getenforce
Enforcing
我們需要checkpolicy命令來驗證自定義SELinux策略,因此我們正在使用dnf命令安裝checkpolicy軟體包,
[root@mongodb ~]#dnf install -y checkpolicy
CentOS-8 - AppStream 4.0 kB/s | 4.3 kB 00:01
CentOS-8 - Base 3.0 kB/s | 3.8 kB 00:01
CentOS-8 - Extras 2.7 kB/s | 1.5 kB 00:00
MongoDB Repository 1.6 kB/s | 2.5 kB 00:01
Dependencies resolved.
================================================================================
Package Architecture Version Repository Size
================================================================================
Installing:
checkpolicy x86_64 2.9-1.el8 BaseOS 348 k
Transaction Summary
================================================================================
Install 1 Package
Total download size: 348 k
Installed size: 1.7 M
Downloading Packages:
checkpolicy-2.9-1.el8.x86_64.rpm 7.5 kB/s | 348 kB 00:46
--------------------------------------------------------------------------------
Total 7.5 kB/s | 348 kB 00:46
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : checkpolicy-2.9-1.el8.x86_64 1/1
Running scriptlet: checkpolicy-2.9-1.el8.x86_64 1/1
Verifying : checkpolicy-2.9-1.el8.x86_64 1/1
Installed:
checkpolicy-2.9-1.el8.x86_64
Complete!
創建一個定制的SELinux策略檔案,
[root@mongodb ~]# vi mongodb_cgroup_memory.te
并在其中添加以下指令,
module mongodb_cgroup_memory 1.0;
require {
type cgroup_t;
type mongod_t;
class dir search;
class file { getattr open read };
}
#============= mongod_t ==============
allow mongod_t cgroup_t:dir search;
allow mongod_t cgroup_t:file { getattr open read };
編譯并應用此SELinux策略,
[root@mongodb ~]# checkmodule -M -m -o mongodb_cgroup_memory.mod mongodb_cgroup_memory.te
[root@mongodb ~]# semodule_package -o mongodb_cgroup_memory.pp -m mongodb_cgroup_memory.mod
[[root@mongodb ~]# semodule -i mongodb_cgroup_memory.pp
MongoDB中創建管理員用戶:
默認情況下,MongoDB服務器中未啟用訪問控制,因此任何人都可以訪問MongoDB服務器并執行管理操作,
因此,非常重要的是,我們創建一個Admin用戶并在MongoDB服務器中啟用訪問控制,
如下連接MongoDB shell,
[root@mongodb ~]# mongo
MongoDB shell version v4.4.2
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("42a1e2d9-cd5c-42bf-93c1-f007b07ec356") }
MongoDB server version: 4.4.2
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
https://docs.mongodb.com/
Questions? Try the MongoDB Developer Community Forums
https://community.mongodb.com
---
The server generated these startup warnings when booting:
2020-12-18T23:17:49.873+08:00: Access control is not enabled for the database. Read and write access to data and configuration is unrestricted
---
---
Enable MongoDB's free cloud-based monitoring service, which will then receive and display
metrics about your deployment (disk utilization, CPU, operation statistics, etc).
The monitoring data will be available on a MongoDB website with a unique URL accessible to you
and anyone you share the URL with. MongoDB may use this information to make product
improvements and to suggest MongoDB products and deployment options to you.
To enable free monitoring, run the following command: db.enableFreeMonitoring()
To permanently disable this reminder, run the following command: db.disableFreeMonitoring()
---
>
與管理資料庫連接,
> use admin;
switched to db admin
>
如下創建管理員用戶,
> db.createUser(
... {
... user: "admin",
... pwd: "liang123",
... roles: [ { role: "userAdminAnyDatabase",db: "admin" } ]
... }
... )
Successfully added user: {
"user" : "admin",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
]
}
列出MongoDB資料庫中的所有用戶,
> show users
{
"_id" : "admin.admin",
"userId" : UUID("26d81b7b-f86a-4507-aa75-015cb0e02a11"),
"user" : "admin",
"db" : "admin",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
],
"mechanisms" : [
"SCRAM-SHA-1",
"SCRAM-SHA-256"
]
}
>
MongoDB管理員用戶已成功創建,
從MongoDB Shell退出,
> exit
bye
MongoDB服務器中啟用訪問控制:
最初,訪問控制在MongoDB服務器中被禁用,因此,任何具有CentOS 8服務器作業系統級訪問權限的用戶都可以連接到MongoDB實體并在資料庫上執行管理操作,這就是為什么我們能夠在上一步中創建管理員用戶而無需任何身份驗證的原因,
要為MongoDB服務器啟用訪問控制,我們需要為mongod.service編輯systemd單元檔案,
[root@mongodb ~]# vi /usr/lib/systemd/system/mongod.service
在此檔案中找到以下行,
Environment="OPTIONS=-f /etc/mongod.conf"
并將其替換為以下行,
Environment="OPTIONS=--auth -f /etc/mongod.conf"

我們已經使用文本編輯器顯式地編輯了systemd單位檔案,因此,我們需要執行以下命令來通知systemd有關此更改,
[root@mongodb ~]# systemctl daemon-reload
重新啟動MongoDB服務以應用更改,
[root@mongodb ~]# systemctl restart mongod.service
要檢查訪問控制,請連接MongoDB shell并執行一些管理命令,
[root@mongodb ~]# mongo
MongoDB shell version v4.4.2
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("c2640def-e833-4bfc-93ae-e0e5ddea7712") }
MongoDB server version: 4.4.2
> use admin
switched to db admin
> show users
uncaught exception: Error: command usersInfo requires authentication :
_getErrorWithCode@src/mongo/shell/utils.js:25:13
DB.prototype.getUsers@src/mongo/shell/db.js:1639:15
shellHelper.show@src/mongo/shell/utils.js:914:9
shellHelper@src/mongo/shell/utils.js:819:15
@(shellhelp2):1:1
這次“ show user”命令引發身份驗證錯誤,它確認在我們的MongoDB服務器中已啟用訪問控制,
現在,以管理員用戶身份連接,
> db.auth("admin",passwordPrompt())
Enter password: ###輸入我們前面設定的是密碼
1
現在,執行相同的命令,以檢查其是否正常運行,
> show users #查詢用戶資訊
{
"_id" : "admin.admin",
"userId" : UUID("26d81b7b-f86a-4507-aa75-015cb0e02a11"),
"user" : "admin",
"db" : "admin",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
],
"mechanisms" : [
"SCRAM-SHA-1",
"SCRAM-SHA-256"
]
}
> exit
bye
[root@mongodb ~]#
已成功使用特權用戶執行命令“顯示用戶”,
MongoDB資料庫的訪問控制已啟用,
配置MongoDB服務以進行網路訪問:
此步驟是可選的,如果您打算通過網路訪問MongoDB資料庫,則必須執行以下配置,
默認情況下,MongoDB服務在本地主機介面上運行,因此,要使其能夠從網路訪問,我們需要在所有介面上運行MongoDB服務,
使用vim編輯器編輯MongoDB組態檔
[root@mongodb ~]# cat /etc/mongod.conf | grep bind
bindIp: 127.0.0.1 # Enter 0.0.0.0,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.binIpAll setting.
[root@mongodb ~]# vi /etc/mongod.conf
[root@mongodb ~]# netstat -anptl | grep mongod
tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN 931395/mongod
[root@mongodb ~]# systemctl restart mongod.service
[root@mongodb ~]# netstat -anptl | grep mongod
tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN 931722/mongod
[root@mongodb ~]#
在此檔案中找到bindIp指令并將其設定為,
修改 bind_ip 127.0.0.1 為 bind_ip = 0.0.0.0 或者注釋掉, #bind_ip 127.0.0.1, 讓其監聽所有外網ip,
bindIp: 0.0.0.0
重新啟動MongoDB服務以應用更改,
[root@mongodb ~]# systemctl restart mongod.service

如果我們啟動了防火墻策略,還需要允許Linux防火墻中的MongoDB服務傳入流量,
[root@mongodb ~]#firewall-cmd --permanent --add-service=mongodb
success
[root@mongodb ~]# firewall-cmd --reload
success
您現在可以從網路訪問MongoDB資料庫服務,
MongoDB資料和日志目錄:
以下是兩個目錄,對MongoDB資料庫管理員來說非常重要,
- /var/lib/mongo-資料目錄(默認)
- /var/log/mongodb-日志目錄(默認)
我們可以通過在/etc/mongodb.conf檔案中設定以下引數來自定義以上目錄,
- storage.dbPath-指定新的資料目錄路徑
- systemLog.path-指定新的日志檔案路徑
結論:
我們已經在CentOS 8服務器上成功安裝了MongoDB,并啟用了訪問控制,MongoDB的權威指南:強大的可擴展資料存盤由O'Reilly Media公司是一個很好的書對MongoDB的管理,我們極力推薦這對MongoDB的資料庫管理員,
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/237068.html
標籤:NoSQL
下一篇:Oracle 資料庫復制
