mongodb的安装和权限管理

mongodb4.0已经发布,但是鉴于线上环境更多的是使用旧版本的mongodb,我们这里使用的mongodb3.4版本。

官网下载地址为:https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.4.18.tgz

直接解压
tar zxvf mongodb-linux-x86_64-rhel62-3.4.2.tgz
然后移动修改目录名字(可以做成软连接的形式)
mv mongodb-linux-x86_64-rhel62-3.4.2 /usr/local/mongodb
mongodb的二进制预编译方式已经安装完成。
[root@test3 mongodb]# pwd
/usr/local/mongodb
[root@test3 mongodb]# ls
bin  GNU-AGPL-3.0  MPL-2  README  THIRD-PARTY-NOTICES
[root@test3 mongodb]#
需要注意的是二进制预编译包没有默认的配置文件,但是默认的配置参数。

#还有就是mongodb的启动一定要放在配置文件中启动不要在命令行指定参数启动
#在当前目录创建conf目录
mkdir conf
#编写配置文件mongod.cnf
#配置文件如下
[root@test3 conf]# cat mongod.conf 
# for documentation of all options, see:
#   http://docs.mongodb.org/manual/reference/configuration-options/

# where to write logging data.
systemLog:
   destination: file
   logAppend: true
   path: /data/mongod/log/mongod.log

# Where and how to store data.
storage:
   dbPath: /data/db
   journal:
     enabled: true
#  engine:
#  mmapv1:
#  wiredTiger:

# how the process runs
processManagement:
   fork: true  # fork and run in background
   pidFilePath: /var/run/mongodb/mongod.pid  # location of pidfile

# network interfaces
net:
   port: 27017
   bindIp:    # Listen to local interface only, comment to listen on all interfaces.


#security:
# security:
#   authorization: enabled

#operationProfiling:

#replication:

#sharding:

## Enterprise-Only Options

#auditLog:

#snmp:
mongodb简易配置文件
配置文件参数简易说明:
--dbpath: 数据文件目录,默认是/data/db.需要创建
--logpath:指定日志文件的存储目录。默认日志输出是在标准输出。对应配置文件中systemlog.
--port: 指定mongodb监听的端口,默认是27017.
--fork: 以守护进程运行,只在类unix系统上有用。

使用以上四个参数就可以启动mongodb服务了.
[root@test3 conf]# cd /usr/local/mongodb/bin/
[root@test3 bin]# ./mongod -f ../conf/mongod.conf

[root@test3 bin]# ./mongo      #进入mongodb的shell交互
MongoDB shell version v3.4.2
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.2
>

mongodb默认是不用用户认证的,因此上面可以直接进入shell交互界面进行crud操作。

需要注意的是: mongodb3.0之后的配置文件时以yaml格式写的!

开启mongodb的auth认证,如下:

#security:
security:
   authorization: enabled  #开启auth认证

mongodb的官方文档感觉和MySQL差距好大,查了博客,链接https://www.cnblogs.com/xiaoqian1993/p/5944039.html

mongodb的账户组成:

  • 用户名
  • 密码
  • role(角色中有对数据库的访问权限设置,把定义的用户归档到需求的角色类中)
  • db: 指定某用户对某个库(库名由db指定)的访问。

博文中有一句话: 帐号是跟着库走的,所以在指定库里授权,必须也在指定库里验证(auth)

 

posted @ 2018-11-05 19:59  夜间独行的浪子  阅读(1006)  评论(0编辑  收藏  举报