出于对数据存储的需要,开始安装Mongodb。
也由此开始了踩坑之旅,在几乎把所有可能出现在安装过程中的问题都无意识地“复现”了一遍之后 o(╥﹏╥)o,终于成功装上了……
回过头看其实mongodb的安装并不复杂,但因为不熟悉也因为不够仔细才会导致花了不少时间。
为了总结教训,也为了之后安装的同学们能够少踩坑,所以总结了这样一份踩坑大合集及相应的解决办法。
一. 下载及安装
https://www.mongodb.com/download-center#community
在上述网址下载符合自己环境的安装包,并安装。这个的过程很简单,毫无坑点。
如图1,可以选择Custom模式,自定义安装路径,我为了节省C盘空间,装在D盘路径下。有的教程里说只能装在C盘,说不装在C盘会有问题,然而事实证明并非如此…
请记住你的安装路径。
图1
二. 新建相应文件夹
安装结束后,进入你刚刚记住的安装路径,打开MongDB文件夹。
我的MongoDB文件夹路径如下:
图2
1)在bin的同目录下新建两个文件夹data和log,如图2绿色框所示,用来存放数据和日志。
2)在data目录下新建文件夹db,如图3所示
图3
三. 启动MongoDB服务
在建好以上文件夹之后,就要开始坑点多多的启动MongoDB服务操作了。
在cmd输入以下命令并执行:
mongod --dbpath “D:\Program Files\MongoDB\Server\3.6\data\db”
dbpath后的路径名请根据自己情况进行修改。
对于这一步操作,有几个坑点,我罗列如下,切勿再踩。
坑点1:请以管理员身份运行cmd !!!
在电脑左下角的程序搜索框输入cmd,右键点击命令行提示符,以管理员身份运行。
如果不以管理员身份运行,那么…就会有…以下问题:
坑点2:请进入bin目录下执行该行命令!!!
按照上图所示,进入到bin目录下再输入该行命令。否则没有添加环境变量的情况下,是无法识别mongod命令的。
坑点3:请将路径名放在双引号内!!!
mongod --dbpath “D:\Program Files\MongoDB\Server\3.6\data\db”
dbpath 后面的路径名,一定要用双引号括起来。
如果不用双引号括起来,那么…就会有…以下问题:
感觉这个报错很隐蔽,因为会刷很多行Genral options,像我一开始直接就忽略了 。
我照着网上一些教程输入没有用双引号括起来的路径名运行该命令,data中的db文件夹一直都是空的。localhost:27017 也一直显示无法连接。无意中注意到后面的Invalid command才发现问题所在:路径名加双引号就可以解决了。
所以,路径名一定要用双引号括起来,一些教程没有注意这个问题。
在用管理员身份运行cmd后,并且进入到bin目录下,并且路径名加双引号后,执行该行命令完成第一步。
此时,验证自己该步骤成功与否的方法是,打开网页输入网址:http://localhost:27017/
如果出现上图内容,那么就是成功了,可以进入下一步了。
四. 配置本地Windows mongodb服务
这样可设置为开机自启动,可直接手动启动关闭,可通过命令行net start MongoDB 启动,该配置会大大方便使用。
1)在bin同级目录下新建配置文件mongo.config
新建该配置文件的方法:
①新建一个txt文件
②txt文件中输入以下内容:
dbpath=D:\Program Files\MongoDB\Server\3.6\data\db
logpath=D:\Program Files\MongoDB\Server\3.6\log\MongoDB.log
logappend=true
journal=true
quiet=true
port=27017
文件路径根据自己情况进行修改,一定要仔细核对,像我就是把路径写错了,导致又出了一些问题。
③重命名该文件为mongo.config
2)配置windows服务
与上一步一样,以管理员身份运行cmd,并进入到bin目录下,然后输入以下命令并运行:
mongod --dbpath "D:\Program Files\MongoDB\Server\3.6\data\db" --logpath "D:\Program Files\MongoDB\Server\3.6\log\MongoDB.log" --install --serviceName "MongoDB"
即根据刚创建的mongo.config配置文件安装服务,名称为MongoDB。
完成后,在左下角程序搜索栏输入“服务”并打开。
应该可以看到名为MongoDB的服务了。
同样,以管理员身份运行cmd,进入bin目录,输入:
net start MongoDB
由此开启MongoDB服务。
刷新服务界面,MongoDB已启动:
这个过程中,我踩到了一个坑。
在输入该行命令并运行后,看起来没什么错。
但是输入net start MongoDB时,提示服务器没有响应控制功能。
发现上图红色框信息中提到了MongoDB.log文件,所以我打开了那个文件。
原来啊,我之前曾经装过一次Mongodb但因为各种原因后来放弃了,虽然没有装成功但是在服务中已经装了MongoDB服务。
解决的这个问题的办法是:删除MongoDB服务,然后重新配置。
1)利用src命令删除服务。
2)重新配置服务,再尝试启动
嗯,这样就成功了。
MongoDB的安装及配置至此终于大功告成。
安装软件或是配置环境,总会遇到千奇百怪的问题,找到问题的原因,总会慢慢解决的,o(* ̄︶ ̄*)o