MongoDB僅提供64位LTS(長期支持)Ubuntu版本的軟件包。
1、導(dǎo)入包管理系統(tǒng)使用的公鑰
//Ubuntu軟件包管理工具(即dpkg和apt)通過要求分銷商使用GPG密鑰對(duì)軟件包進(jìn)行簽名來確保軟件包的一致性和真實(shí)性撒踪。用以下命令導(dǎo)入MongoDB公共GPG密鑰:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
2冯丙、為MongoDB創(chuàng)建一個(gè)列表文件
//使用適合的Ubuntu版本的命令創(chuàng)建/etc/apt/sources.list.d/mongodb-org-3.4.list列表文件:
Ubuntu 12.04
echo "deb [ arch=amd64 ] http://repo.mongodb.org/apt/ubuntu precise/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list
Ubuntu 14.04
echo "deb [ arch=amd64 ] http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list
Ubuntu 16.04
echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list
3、更新本地依賴包索引
sudo apt-get update
4怜姿、安裝mongodb
sudo apt-get install -y mongodb-org
5、配置
大多數(shù)類Unix操作系統(tǒng)限制會(huì)話可能使用的系統(tǒng)資源。這些限制可能會(huì)對(duì)MongoDB操作產(chǎn)生負(fù)面影響蚕钦。有關(guān)詳細(xì)信息,請(qǐng)參閱UNIX ulimit設(shè)置鹅很。
MongoDB實(shí)例默認(rèn)將其數(shù)據(jù)文件存儲(chǔ)在/var/lib/mongodb及其日志文件/var/log/mongodb中嘶居,并使用mongodb用戶帳戶運(yùn)行。您可以在/etc/mongod.conf中指定備用日志和數(shù)據(jù)文件目錄促煮。有關(guān)其他信息邮屁,請(qǐng)參閱systemLog.path和storage.dbPath。
如果更改運(yùn)行MongoDB進(jìn)程的用戶菠齿,則必須修改/var/lib/mongodb和/var/log/mongodb目錄的訪問控制權(quán)限佑吝,以使此用戶能夠訪問這些目錄。
//mongo.conf
# mongod.conf
# for documentation of all options, see:
# http://docs.mongodb.org/manual/reference/configuration-options/
# Where and how to store data.
storage:
dbPath: /var/lib/mongodb
journal:
enabled: true
# engine:
# mmapv1:
# wiredTiger:
# where to write logging data.
systemLog:
destination: file
logAppend: true
path: /var/log/mongodb/mongod.log
# network interfaces
net:
port: 27017
bindIp: 0.0.0.0
#processManagement:
#security:
#auth=ture
security:
authorization: enabled
#operationProfiling:
#replication:
#sharding:
## Enterprise-Only Options:
#auditLog:
#snmp:
6绳匀、啟動(dòng)
sudo service mongod start
#檢查MongoDB服務(wù)器系統(tǒng)進(jìn)程
ps -aux|grep mongo
#通過啟動(dòng)命令檢查MongoDB服務(wù)器狀態(tài)
netstat -nlt|grep 27017
# 通過啟動(dòng)命令檢查MongoDB服務(wù)器狀態(tài)
sudo /etc/init.d/mongodb status
# 通過系統(tǒng)服務(wù)檢查MongoDB服務(wù)器狀態(tài)
sudo service mongodb status
7芋忿、啟動(dòng)mongod客戶端
mongod --port 27017
//可以手動(dòng)定義數(shù)據(jù)存儲(chǔ)路徑--dbpath /data/db1
//--host
9、設(shè)置用戶密碼
use admin
db.createUser(
{
user: "myUserAdmin",
pwd: "abc123",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)
//然后疾棵,在配置文開啟驗(yàn)證auth,加入:
#auth=ture
security:
authorization: enabled
或者敲入命令
mongod --auth --port 27017
//連接
mongo --port 27017 -u "myUserAdmin" -p "abc123" --authenticationDatabase "admin"
或者
mongo --port 27017直接連接戈钢,但是使用命令會(huì)要求驗(yàn)證
use admin
db.auth("myUserAdmin", "abc123" )
//創(chuàng)建測試用戶
use test
db.createUser(
{
user: "myTester",
pwd: "xyz123",
roles: [ { role: "readWrite", db: "test" },
{ role: "read", db: "reporting" } ]
}
)
mongo --port 27017 -u "myTester" -p "xyz123" --authenticationDatabase "test"
// 查看一下所有的用戶
db.system.users.find();
db.system.users.remove({user:"java1"});
8、卸載
sudo apt-get purge mongodb-org*
//sudo apt-get purge mongodb mongodb-clients mongodb-server mongodb-dev
//sudo apt-get purge mongodb-10gen
//sudo apt-get autoremove
sudo rm -r /var/log/mongodb
sudo rm -r /var/lib/mongodb
附:
//php安裝mongodb擴(kuò)展
sudo pecl install mongodb
//在php.ini添加
extension=mongodb.so
//若沒有pecl,需要安裝phpize for PHP7
sudo apt-get install php7.0-dev