(Windows版)无法启动MongoDB

首先

我会记住这个问题的原因和解决方法,因为Windows上的MongoDB无法启动,花了半天才解决。

操作系统:Windows7
mongoDB版本:v4.0.2

关于错误

我在运行「mongo」命令时遇到了以下错误。

mongo
MongoDB shell版本v4.0.2
连接至:mongodb://127.0.0.1:27017
2018-10-06T22:12:18.898+0900 E QUERY [js] 错误:无法连接到服务器127.0.0.1:27017,连接尝试失败:SocketException:连接到127.0.0.1:27017时出错:: caused
by :: �Ώۂ̃R���s���[�^�[�ɂ���ċ��ۂ��ꂽ���߁A�ڑ��ł��܂���ł����B :
connect@src/mongo/shell/mongo.js:257:13
@(connect):1:6
异常:连接失败

肝紧要的部分出现乱码,而造成错误的原因是明确的,对于我的情况来说,原因是C盘空间不足。因此我决定将mongoDB的数据迁移到D盘。
(这是悲剧的开始。。)

尝试过的事情 (Shì de

我把C驱动器上的”MongoDB”文件夹全部移动到D驱动器上。
然后,我更改了环境变量的路径。

在参考其他人的文章之后,
删除D:\MongoDB\Server\4.0\data\mongod.lock文件,
并更改D:\MongoDB\Server\4.0\bin\mongod.cfg文件中路径的描述,
然后执行
mongod ‘–dbpath D:\MongoDB\Server\4.0\data’
虽然基本上可以启动,但进程不会变成守护进程。

由于这样很不方便,所以我调查了很多关于成为守护进程的方法之后,我执行了以下命令:
start /b mongod ‘–dbpath D:\MongoDB\Server\4.0\data’

开始进程:未找到接受参数’–dbpath D:\MongoDB\Server\4.0\data’的位置指定参数。

出现错误。

然后,我最终尝试了家传的秘宝”电脑重新启动”,但仍然没有成功,让我有些失望。

明白的事情

然而,后来调查发现,在Windows系统中,安装mongoDB时会将mongoDB注册为Windows服务。因此,在电脑启动时,mongoDB会自动运行并启动,这就解释了为什么平时可以直接使用”mongo”命令。

所以,确认了一下发现自动执行命令确实已经在注册表中注册,而且是在C盘。于是我把它改成了D盘(改变Windows服务的路径),然后右键点击服务,点击开始,成功地使得”mongo”命令可以使用了!

最后

唉,一旦陷入到环境搭建的问题中,真的会感觉忍不住要哭出来呢。
即使有看起来像是解决方案的文章,也可能因为工具版本不同或操作系统不同而进一步陷入困境。
这次写的可能是关于Windows×mongoDB×目录变更的一个小众文章,但我希望能有一天能帮到有困难的人。

这边就这样吧。

bannerAds