系統(tǒng):Ubuntu 16.04
官方文檔:https://docs.mongodb.com/master/tutorial/install-mongodb-on-ubuntu/
灰常重要!
Ubuntu提供的非官方mongodb包并不是MongoDB維護的(開頭就甩鍋,妙啊)你應(yīng)該總是使用MongoDB官方的mongodb-org包,這個包同MongoDB最近主要和次要發(fā)布版總是保持一致。
平臺支持
MongoDB只為64位的Ubuntu LTS版提供包。比如14.04,16.04...
這些包也許能在別的Ubuntu發(fā)行版上使用,盡管它們不被支持。
Ubuntu 16.04 需要升級包
(簡而言之)Ubuntu 16.04 安裝MongoDB前必須升級glibc(至少為glibc 2.23-0ubuntu5)不然會出大問題。
安裝MongoDB Community Edition
注意:
安裝不同版本的MongoDB請參考那個版本的說明文檔。(我看了下好像除了版本號沒啥不同 = = ··)
使用.deb包安裝(推薦)
導(dǎo)入包管理系統(tǒng)需要的公鑰
Ubuntu包管理工具(dpkg和apt)為了保證包的一致性和真實性需要發(fā)布者使用GPG Keys對包進行簽名。輸入下列命令導(dǎo)入MongoDB GPG 公鑰:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
創(chuàng)建MongoDB列表文件
創(chuàng)建/etc/apt/sources.list.d/mongodb-org-4.0.list列表文件:
# For Ubuntu 16.04
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/4.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list
重新加載本地包管理數(shù)據(jù)庫
sudo apt-get update
安裝MongoDB包
安裝最新版本,輸入下面的命令:
sudo apt-get install -y mongodb-org
安裝指定版本,你必須明確指出每一個組件包的版本號,像下面這樣:
sudo apt-get install -y mongodb-org=4.0.0 mongodb-org-server=4.0.0 mongodb-org-shell=4.0.0 mongodb-org-mongos=4.0.0 mongodb-org-tools=4.0.0
PS:如果你只安裝了mongodb-org=4.0.0而不包含其他組件包,將會安裝最新版本的MongoDB不論你指定的版本是什么。
固定特定版本
盡管你可以指定任意一個可用的MongoDB版本,apt-get仍將在庫里有新版可用時更新本地包。為了防止非主觀的升級,固定住特定版本的包。固定當(dāng)前安裝版本的MongoDB,輸入下列命令:
echo "mongodb-org hold" | sudo dpkg --set-selections
echo "mongodb-org-server hold" | sudo dpkg --set-selections
echo "mongodb-org-shell hold" | sudo dpkg --set-selections
echo "mongodb-org-mongos hold" | sudo dpkg --set-selections
echo "mongodb-org-tools hold" | sudo dpkg --set-selections
運行MongoDB Community Edition
多數(shù)類UNIX操作系統(tǒng)限制了session使用的系統(tǒng)資源,這些限制對MongoDB運行可能有負(fù)面影響。參考UNIX ulimit Settings了解更多。
默認(rèn)情況下,MongoDB實例將其數(shù)據(jù)文件存儲在/var/lib/mongodb,日志文件存儲在/var/log/mongodb,通過mongodb用戶帳號運行。你可以修改/etc/mongod.conf指定其他的目錄來存儲數(shù)據(jù)和日志文件。更多信息參見 systemLog.path和storage.dbPath。
如果你更換了用戶運行MongoDB進程,你必須修改/var/lib/mongodb及/var/log/mongodb目錄的訪問控制權(quán)限,以使當(dāng)前對這些目錄用戶有相應(yīng)權(quán)限。
啟動MongoDB
使用下面的命令啟動MongoDB:
sudo service mongod start
驗證MongoDB啟動成功
驗證mongod進程成功啟動,可通過在日志文件/var/log/mongodb/mongod.log尋找其內(nèi)容中是否包含下列內(nèi)容的一行:
[initandlisten] waiting for connections on port 27017
port是mongod監(jiān)聽的端口。如果你在/etc/mongod.conf配置文件中修改了net.port設(shè)置,顯示的端口可能會不一樣。
如果你修改了systemLog.path配置文件選項,你需要到你指定的目錄下尋找。
你可能會看到mongod輸出中的非關(guān)鍵警告。只要你看到了日志文件中有上面的那一行,你就可以在對MongoDB的初始評估安全的忽略這些警告。
停止MongoDB
若是需要,你可以通過下面的命令停止mongod進程:
sudo service mongod stop
重啟MongoDB
輸入下面的命令重啟mongod:
sudo service mongod restart
開始使用MongoDB
mongo --host 127.0.0.1:27017