MongoDB 线上环境按照及配置(授权方式启动)

Posted 厚积薄发

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MongoDB 线上环境按照及配置(授权方式启动)相关的知识,希望对你有一定的参考价值。

1创建文件repo文件

#vim /etc/yum.repos.d/mongodb-org-3.4.repo

[mongodb-org-3.4]

name=MongoDB Repository

baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/

gpgcheck=1

enabled=1

gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc

2安装 MongoDB 包

#yum install -y mongodb-org

(可选)当新的版本可用的时候,yum 会更新这些包,为防止这些“无意”的更新,添加下列行到 /etc/yum.conf 文件

exclude=mongodb-org,mongodb-org-server,mongodb-org-shell,mongodb-org-mongos,mongodb-org-tools

3关闭 selinux

$sudo sed -i ‘/^[^#]/s/\(SELINUX=\)\([a-z]\+\)/\1disabled/‘ /etc/sysconfig/selinux

$sudo sed -i ‘s/^SELINUX=.*/SELINUX=disabled/‘ /etc/selinux/config

$sudo setenforce 0

4新建超级管理员账号

#mongo

>use admin

db.createUser(

  {

    user: "superadmin",

    pwd: "123456",

    roles: [ { role: "userAdminAnyDatabase",db:"admin" } ]

  }

)

>exit

 

5修改服务启动为授权方式启动

#vim /lib/systemd/system/mongod.service

Environment="OPTIONS=-f /etc/mongod.conf --auth "

#systemctl daemon-reload

#systemctl  restart mongod

 

 

6新建的数据库及管理员账号

#mongo -u "superadmin" -p "123456" --authenticationDatabase "admin"

> use dbName

db.createUser(

  {

    user: "dbUser",

    pwd: "123456",

    roles: [ { role: "dbOwner", db: "dbName" } ]

  }

)

 

7 程序中使用授权连接串

client = new MongoClient("mongodb://dbUser:[email protected]:27017/dbName");

8 mongodb维护

默认情况下用户只能操作自己所在的数据库的数据,即使是超级管理员也不例外。

若需要操作其他数据库则需要相对应数据库的用户授权。

Use dbName

Db.auth(“dbUser”,”123456”)

下面图中演示的是超管如何查看其他数据库中的集合信息。

 

删除数据库

use dbName

db.dropDatabase()

删除用户

use dbName

db.dropUser("userName")

查看用户

db.getUsers()

以上是关于MongoDB 线上环境按照及配置(授权方式启动)的主要内容,如果未能解决你的问题,请参考以下文章

MongoDB 通过配置文件启动及注册服务

MongoDB的「Linux」安装及基本使用

关闭开启mongo授权验证authorization

centos7篇---centos7中安装mongodb

MongoDB和MongoDB Compass的安装配置教程

如何安装,配置MongoDB?