欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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

程序员文章站 2022-06-11 10:35:40
...

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导致的不能连接问题Step2. 双击上一步下载的安装包,根据安装向导的提示,一直next,选择complete,最后finish,即安装成功。注意mongodb的安装目录。
MongDB解决Authentication Failed导致的不能连接问题

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导致的不能连接问题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导致的不能连接问题另外,我们可以自行指定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导致的不能连接问题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导致的不能连接问题尝试敲入以下命令: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导致的不能连接问题以上之后,便可成功授权successfully authenticated。

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

相关标签: 解决方案