zoukankan      html  css  js  c++  java
  • Windows下设置Mongodb用户名密码

    MongoDB认证:

      在默认的情况下,Mongodb是监听在127.0.0.1 IP上的,端口号默认为27017,任何客户端都可以连接,不需要认证

      默认情况下,Mongodb也是没有管理账户的,除非你在admin库中创建了用户,当然光创建了用户是没有用的,还要用--auth参数启动,不然认证也是不生效的

      好处:

        随时可以连接,不用配置一堆配置文件

      坏处:

        公网服务器搭建的Mongodb,那么所有人都可以玩你的数据,并且会有网管发来的邮件,然后添加认证

    首先先启动Mongodb,以不带认证的方式启动

    创建所有数据库管理员账户:

    1:以管理员身份运行cmd,然后cd到Mongodb的bin的目录

    C:WINDOWSsystem32>cd F:6.0envmongodb-win32-x86_64-2008plus-3.2.15
    
    C:WINDOWSsystem32>F:
    
    F:6.0envmongodb-win32-x86_64-2008plus-3.2.15>cd bin
    
    F:6.0envmongodb-win32-x86_64-2008plus-3.2.15in>

    2:输入命令mongo.exe,进入mongodb命令界面:前提是先启动Mongodb

    F:6.0envmongodb-win32-x86_64-2008plus-3.2.15in>mongo.exe

    3:创建数据库,我用的库叫test

    > use test;
    switched to db test

    4:然后切换回admin库创建用户

    > use admin
    switched to db admin

    5:创建管理员账号,创建之前需要先了解一下Mongodb内置角色

    Mongodb内置角色
    1. 数据库用户角色:read、readWrite;
    2. 数据库管理角色:dbAdmin、dbOwner、userAdmin;
    3. 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
    4. 备份恢复角色:backup、restore;
    5. 所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
    6. 超级用户角色:root  
    7. 内部角色:__system

    6:然后创建管理员账号:

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

    7:然后验证一下是否成功

    > db.auth("root","root")
    1

    在我创建完成后使用这个账号去连接test库时,却还是连接不上,经过排查后,发现这个创建的用户是在admin库创建的,需要再去test库创建一个用于认证链接test库的账号

    然后再Mongodb启动的时候加上 --auth就可以了

    作者:彼岸舞

    时间:2020926

    内容关于:工作中用到的小技术

    本文来源于网络,只做技术分享,一概不负任何责任

  • 相关阅读:
    【R】爬虫案例
    [R] 保存pheatmap图片对象到文件
    [R] 添加误差棒的分组折线图:geom_path: Each group consists of only one observation. Do you need to adjust the...
    [R] read.table/read.delim读入数据行数变少?
    [R] cbind和filter函数的坑
    [R]在dplyr函数的基础上编写函数(3)tidyeval
    [R]在dplyr基础上编写函数(2)substitute和quote
    30个Java知识点
    Java的30个知识点
    40个知识点
  • 原文地址:https://www.cnblogs.com/flower-dance/p/13736599.html
Copyright © 2011-2022 走看看