MongoDB连接失败 windows

上周五在电脑上安装了个 MongoDB ,然后,按照课程上教的,一步步来,结果呢,一直 connect failed。

就很是奇怪了,百度了很多方法,也不管用。

但我还是来总结一下吧。

启动MongoDB的步骤是什么?

1.找到 MongoDB的安装目录(启动 windows msi 文件 我放到了百度云里 地址 :),然后 新建三个文件: data  和 etc 和 log。

MongoDB连接失败 windows_第1张图片

data里面存放的是 启动了配置之后的一些信息,自动生成的,不用管。不过这里面的东西,对后面启动失败的时候有用处

etc里面存放的是 mongo的配置服务文件 在它里面新建一个 mongodb.conf 文件,里面配置一些内容,大概是这样:

log里面存放的是 mongodb服务启动时的日志,不用去管就好,在服务启动的时候,会自动生成 mongodb.log

然后,就是doc操作了。

准备工作都做好了,管理员身份进入到 mongoDb 安装目录的bin目录下, 

bin> mongod --config e:\mongodb\etc\mongodb.conf

启动配置服务。

再以管理员身份重新打开一个 doc 窗口,启动mongo客户端。同样是进入到 mongodb 的安装目录的bin下, 

bin>mongo

理论上,服务启动成功了,如下:(因为加入了 安全认证 机制 .conf 里面配置的 auth ,所以 不再有警告了)

 

在这之后,要 登陆 用户才能操作(因为.conf 文件里面 加入了安全认证),如果直接 show databases的话,由于没有权限,会报错:

MongoDB连接失败 windows_第2张图片 

use admin

db.auth("admin","admin")

返回1,表示认证成功。

然后在 admin 用户下,可以为 某个 database 创建 新用户,赋予权限:

如下:

use bike(这是个database)

db.createUser(

{

user:"aaa",

pwd:"123",

roles:["ReadWrite"]

}

) 

然后就可以 进入新的database 了

use bike

db.auth("aaa", "123")  // 用户认证登陆

就可以操作这个 bike 这个database了。

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

但有些时候就会遇到问题了,  connect failed  

怎么解决呢?

1.先关掉第一个doc窗口,或者直接ctrl+c停掉服务,然后把 data 目录下的东西全部删除,(有人说删除.lock 文件就可以了,我觉得还是都删除比较好,恢复到最原始的样子。)

2.重新 执行 mongod --config e:\mongodb\etc\mongodb.conf  (也就是重启服务了)

3.再在新的doc窗口下, bin>mongo

如果还是不行,那我还有个办法,windows+R 输入 service.msi 进入到服务管理,然后找到 mongodb 服务,停止,或者启动之后再停止, 算是手动重启了吧,然后再重复 1,2,3。 这种方式,上周五的时候我成功了,就是在我搞了一中午之后,下午某个时刻,突然就好了。很激动啊!

然后今天呢,我又要开服务 ,开客户端了, 然后又说  connect failed 就很奇怪了, 试过了上面的方法,都失败了,然后呢,我想起来,我开了代理,于是关了代理,天哪,神奇般的 通了!

 

你可能感兴趣的:(疑难问题,学习总结)