说明:由于ubuntu 14取消了对mongodb包的支持,因此,ubuntu 14必须通过源码包的形式进行安装。Ubuntu 16 TLS有mongodb的包的支持,可以直接安装
1. 导入密钥
root@ros-OptiPlex-3050:~# wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -
OK
2. 创建一个列表文件MongoDB
root@ros-OptiPlex-3050:~# echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list
deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/4.2 multiverse
3. 安装
root@ros-OptiPlex-3050:~# sudo apt-get install mongodb
root@ros-OptiPlex-3050:~# service mongodb status
● mongodb.service - An object/document-oriented database
Loaded: loaded (/lib/systemd/system/mongodb.service; enabled; vendor preset: enabled)
Active: active (running) since 四 2019-09-05 11:10:20 CST; 3min 39s ago
Docs: man:mongod(1)
Main PID: 24009 (mongod)
CGroup: /system.slice/mongodb.service
└─24009 /usr/bin/mongod --config /etc/mongodb.conf
9月 05 11:10:20 ros-OptiPlex-3050 systemd[1]: Started An object/document-oriented database.
4. 添加用户
> show dbs
admin 0.078GB
local 0.078GB
> use admin
switched to db admin
> show collections
system.indexes
system.version
> db.createUser({user:"hett",pwd:"hett",roles:[{role:"userAdminAnyDatabase",db:"admin"}]})
Successfully added user: {
"user" : "hett",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
]
}
> show collections
system.indexes
system.users
system.version
> db.system.users.find()
{ "_id" : "admin.hett", "user" : "hett", "db" : "admin", "credentials" : { "MONGODB-CR" : "52d2a50b4f7c87f3df99d02892b7946f" }, "roles" : [ { "role" : "userAdminAnyDatabase", "db" : "admin" } ] }
> exit
5. 修改配置文件
root@ros-OptiPlex-3050:~# nano /etc/mongodb.conf
bind_ip = 192.168.8.34
port = 27017
# Enable journaling, http://www.mongodb.org/display/DOCS/Journaling
journal=true
# Enables periodic logging of CPU utilization and I/O wait
#cpu = true
# Turn on/off security. Off is currently the default
#noauth = true
auth = true
6. 认证