MongDB解决Authentication Failed导致的不能连接问题

MongoDB的安装

Step1. 打开MongoDB产品下载页面https://www.mongodb.com/download-center?jmp=nav#community,选择Windows Server 2008 R2 64-bit and later, with SSL support x64,点击下载。
MongDB解决Authentication Failed导致的不能连接问题_第1张图片Step2. 双击上一步下载的安装包,根据安装向导的提示,一直next,选择complete,最后finish,即安装成功。注意mongodb的安装目录。
MongDB解决Authentication Failed导致的不能连接问题_第2张图片

MongoDB的配置

Step1. 打开mongoDB的bin,记住它的路径,我的是在C:\Program Files\MongoDB\Server\3.4\bin。接下来,win+R—cmd,打开了命令行,再 cd C:\Program Files\MongoDB\Server\3.4\bin,接下来对mongoDB的配置将在此路径中进行。

MongDB解决Authentication Failed导致的不能连接问题_第3张图片Step2. 创建数据库文件的存放位置
…\bin>mongod,这里默认指定了dbpath=C:\data\db,但需要我们提前在C盘根目录下创建data\db,否则这一步会出现"dbpath=C:\data\db not found"的错误提示。不用管这里的Warning: access is not enabled for the database。
MongDB解决Authentication Failed导致的不能连接问题_第4张图片另外,我们可以自行指定dbpath=D:\my test\data\db,前提是它已经创建好,否则还是出现not found的错误提示。命令行中可以这样敲…bin>mongod --dbpath “D:\my test\data\db”。不用管这里的Warning: access is not enabled for the database,也可以指定logpath,如mongod --dbpath “D:\my test\data\db” --logpath “D:\my test\data\log\mongodb.log”,那么控制台显示的内容将保存到日志中。
MongDB解决Authentication Failed导致的不能连接问题_第5张图片Step3. 在浏览器中输入网址:http://localhost:27017/ 。如果服务启动成功会看到以下一段话:
It looks like you are trying to access MongoDB over HTTP on the native driver port.
Step4. Step2.的cmd窗口不要关,回到bin文件夹下,管理员身份运行mongo.exe。
MongDB解决Authentication Failed导致的不能连接问题_第6张图片尝试敲入以下命令:db; use admin; db.auth(“admin”, “admin”)

>db
test
>use admin
switched to db admin

当我们敲入db.auth(“admin”, “admin”)时,返回为0,出现Error: Authentication failed。也正是这个原因导致robomongo无法连接

>db.auth("admin","admin")
Error: Authentication failed.
0

解决方法是手动添加admin账户,创建成功后,再次db.auth(“admin”, “admin”),返回1

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

MongDB解决Authentication Failed导致的不能连接问题_第7张图片以上之后,便可成功授权successfully authenticated。

转载地址:https://www.cnblogs.com/shuibingyue/p/7101361.html

你可能感兴趣的:(解决方案,mongoDB)