1、下载

进入mongodb官方页面选择适合自己的版本。
执行下载命令:

wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu1404-3.4.7.tgz
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu1804-4.0.13.tgz

 

2、创建mongodb安装目录以及日志目录

# mongodb安装目录
mkdir /data/mongodb
# mongodb日志目录
mkdir /var/log/mongodb

3、创建mongodb配置文件

vim /etc/mongodb.conf

配置文件详情

具体如何使用配置,大家更具自己情况而定

#数据库安装位置
dbpath=/data/mongodb
#日志存储位置
logpath=/var/log/mongodb/mongodb.log
#是否不覆盖原日志
logappend=true
#是否立即持久化存储
journal=true
#是否以守护进程方式运行
fork=true
#绑定使用IP
bind_ip = 127.0.0.1
#绑定端口默认27017
#port = 27017
#是否以安全认证方式运行(即用户登录信息)
noauth = true
#auth = true

4、编译安装

-C 后面接解压位置,之前已经创建了  /data/mongodb

tar -zxvf mongodb-linux-x86_64-ubuntu1404-3.4.7.tgz -C /data/mongodb

把mongo的shell工具全部拷贝到/usr/bin/目录下,即可全局使用这些工具:

cd /data/mongodb/
cp mongodb-linux-x86_64-ubuntu1404-3.4.7/bin/* /usr/bin/

启动数据库:

# 启动服务端
mongod --config /etc/mongodb.conf
# 或者简写为
mongod -f /etc/mongodb.conf

# 结果如下:

about to fork child process, waiting until server is ready for connections.
forked process: 3850
child process started successfully, parent exiting

进入数据库:

# 进入mongo命令
mongo
# 结果如下:
>show dbs
admin 0.000GB
local 0.000GB

 当然这样可还没好,为了安全别忘了配置用户哦,mongo.conf中的auth也要置为true哦

 

 注意:

1、mongodb中内置角色:mongodb内置了很多用户角色,每个内置角色都有着自己各自的权限,我们可以通过创建、用户来继承这些角色,从而获取对数据库的操作权限。

 

 

 

 

2、自定义mongodb角色:角色可以通过命令来自定义,具体参考网址:https://www.cnblogs.com/dbabd/p/10811523.html

例如:在admin数据库中创建自定义用户dbabd,对集合city有find,update权限,对集合user_operation只有find权限。

> db.createRole(
    {
        role: "dbabd",
        privileges: [
            { resource: { db: "dbabd", collection: "city" }, actions: ["find", "update"] },
            { resource: { db: "dbabd", collection: "user_operation" }, actions: ["find"] },
        ],
        roles: []
    }
)

或

> db.adminCommand(
    {
        createRole: "dbabd",
        privileges: [
            { resource: { db: "dbabd", collection: "city" }, actions: ["find", "update"] },
            { resource: { db: "dbabd", collection: "user_operation" }, actions: ["find"] }
        ],
        roles: []
    }
)

 

3、创建超级管理员用户:

# 先切换到admin库
use admin

db.createUser(
{
user: "root",
pwd: "123",
roles: [{ role: "userAdminAnyDatabase", db: "admin" }]
}
)

 

创建普通用户:

# 先切换到admin库
use admin


db.createUser(
{
user: "ceshi",
pwd: "123",
roles: [{ role: "readWrite", db: "newdb" }]
}
)

 

 

 

 posted on 2019-12-06 19:22  墨语i  阅读(505)  评论(0)    收藏  举报