mongodb提供了基於centos7的RPM包,我們今天就拿單機安裝步驟來進行整理,mongodb也提供了tar包,具體使用哪個,根據實際情況使用,我們今天來驗證一下mongodb4.2的環境,首先我們需要更新一下我們的系統,不管配置什麼服務,這都是必須要做的第一步
yum update
升級完系統我們就需要下載安裝文件了,我們在官網的下載也下載社區版本,因爲企業版是付費的,地址都有,我們都下載下來即可.
wget https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.2/x86_64/RPMS/mongodb-org-server-4.2.5-1.el7.x86_64.rpm
wget https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.2/x86_64/RPMS/mongodb-org-mongos-4.2.5-1.el7.x86_64.rpm
wget https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.2/x86_64/RPMS/mongodb-org-tools-4.2.5-1.el7.x86_64.rpm
wget https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.2/x86_64/RPMS/mongodb-org-shell-4.2.5-1.el7.x86_64.rpm
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.2.5.tgz
安裝上面下載的前4個即可
rpm -ivh https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.2/x86_64/RPMS/mongodb-org-server-4.2.5-1.el7.x86_64.rpm
rpm -ivh https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.2/x86_64/RPMS/mongodb-org-mongos-4.2.5-1.el7.x86_64.rpm
rpm -ivh https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.2/x86_64/RPMS/mongodb-org-tools-4.2.5-1.el7.x86_64.rpm
rpm -ivh https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.2/x86_64/RPMS/mongodb-org-shell-4.2.5-1.el7.x86_64.rpm
通過上面的步驟就已經安裝好了mongodb是不是很簡單,其實一點也不復雜,但是安裝完成之後,我們需要對mongodb進行配置,配置的地方主要有2處,因爲我們是RPM的方式安裝,所以默認的兩個需要配置的路徑爲:
1./etc/mongod.conf配置文件,這個配置文件主要配置了mongodb的核心配置,包括數據文件路徑,日誌文件路徑,PID文件路徑,引擎類型,認證等比較關鍵的信息.其中需要詳細注意的是端口號改成其他的防止攻擊,IP改爲0.0.0.0外網可以訪問.
2./usr/lib/systemd/system/mongod.service,這個文件主要配置mongodb服務的相關信息,默認使用用戶爲mongod,用戶組爲mongod,PID路徑爲/var/run/mongodb/mongod.pid,我們需要改成我們自己的用戶,同時要將我們自己建立的數據文件,日誌文件,PID文件路徑的可讀寫權限授予創建的用戶.
通過以上2個步驟就可以完成我們的服務配置了.就可以啓動服務了,但是這時候其實你的外網還是不可用,因爲防火牆,所以我們需要將防火牆屏蔽掉,或者開放配置的端口的白名單.
<注>centos錯誤mongod.service: control process exited, code=exited status=1
建立鏈接
ln -s /usr/lib/systemd/system/mongod.service /etc/systemd/system/multi-user.target.wants/
重新加載systemctl
systemctl daemon-reload
關閉防火牆
systemctl stop firewalld.service
systemctl disable firewalld.service
停止
use admin
db.shutdownServer()
重新加載systemctl
systemctl daemon-reload
啓動
systemctl start mongod
進程過濾
ps aux | grep mongod
ps -ef | grep mongod
我們數據庫建立後第一件事是建立一個超級用戶,用以管理用戶.
use admin
db.createUser({user: "admin",pwd: "admin",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]});
db.auth('admin','admin');