MongoDb创建用户

按照网上的博客创建用户的时候,出现了authentication failed,下面的文章是参考。

整理流程就是,先创建一个管理员账户,再用管理员账户去创建读写用户。

以下为转载。

==============================================

0.随笔摘要:

  1. MongoDB  安装配置
  2. MongoDB  权限控制
  3. MongoDB  注意事项 authentication failed

1.MongoDB  下载安装配置

        MongoDB官网 https://www.mongodb.com/  下载安装包, 直接next next安装即可,可自行选择安装路径。

  在MongoDB安装路劲的bin目录下新建配置文件mongo.config, 比如: D:\programs\mongoDB\bin\mongo.config

   mongo.config的内容:SC DELETE MongoDB   

    dbpath=D:\data\db        #数据库存储位置 自己去新建对应的目录
    logpath=D:\data\logs\mongo.log  #数据库日志位置 自己去新建对应的目录和文件
    auth=false             #授权登入启禁用

  以配置文件启动MongoDB服务;管理员身份进入cmd窗口A,cd 进入安装路径,比如cd D:\programs\mongoDB\bin

  进入bin目录后,执行如下服务启动命令(注意自建的配置文件路径):

1 D:\programs\mongoDB\bin>mongod --config D:\programs\mongoDB\bin\mongo.config --install --serviceName "MongoDB"

  如果以前安装和配置过MongoDB,但卸载了MongoDB,可是MongoDB服务还未删除,管理员身份执行命令进行删除服务:

1 D:\programs\mongoDB\bin>SC DELETE MongoDB

 

2.MongoDB  权限控制(用户密码)  此操作【一定】要在【命令行窗口】里进行创建用户!!!

  服务启动后,再多开一个cmd窗口B,cd 进入安装路径,比如cd D:\programs\mongoDB\bin,执行命令,创建授权root用户: 

 

复制代码

 D:\programs\mongoDB\bin>mongo
 MongoDB shell version v3.4.3
 connecting to: mongodb://127.0.0.1:27017
 MongoDB server version: 3.4.3
 > db
 test
 > use admin
 switched to db admin  
 >db.createUser(
    {
      user: "root",
      pwd: "rootpwd",
      roles: [ {role:"root", db:"admin"} ]
    }
 )

复制代码

 

  mongo的权限控制,用户密码配置可参考http://www.2cto.com/database/201608/533458.html ,这一块完成后,

  请在当前cmd窗口B,Ctrl+C 退出连接

  请在之前cmd窗口A,Ctrl+C 关闭MongoDB  服务,关闭窗口A

  修改和保存配置文件mongo.config:

    dbpath=D:\data\db        #数据库存储位置 
    logpath=D:\data\logs\mongo.log  #数据库日志位置 
    auth=true                 #改授权登入启用

   打开windows服务,Ctrl+Shift+ESC, 找到MongoDB服务,右键选择开启服务,那么项目或第三方工具连接MongoDB就必须使用用户名密码了!!!!

3.MongoDB  注意事项 authentication failed

  【一定】要在【命令行窗口】里进行创建用户!!!,项目或第三方工具才能使用用户名密码连接MongoDB指定的数据库!!!

    使用root权限在指定业务库,创建用户过程:

复制代码

 D:\programs\mongoDB\bin>mongo
 MongoDB shell version v3.4.3
 connecting to: mongodb://127.0.0.1:27017
 MongoDB server version: 3.4.3
 > use admin  #1数据库切换至admin管理库
 switched to db admin
 > db.auth('root', 'rootpwd') #2验证root用户
 1  
 > use mydb  #3切换至业务库 在该库创建访问该库的用户
 >db.createUser(   #4 创建用户
    {
      user: "mydbDBA",
      pwd: "123321",
      roles: [ {role:"dbOwner", db:"mydb"} ]
    }
 )

复制代码

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值