nodejs学习8:windows连接mongodb出现的错误解决办法
今天遇到了在windows下连接mongodb错误的情况,因为之前安装是正常的,而重启的电脑之后就再也连接不上。于是在群里求助了下,无果,查阅了官网的英文文档,终于有些眉目了,故此一记。
先吐槽下命令行这种违背历史潮流的东西。
1、exception: connect failed
连接失败,一般是尚未启动mongodb(其实是配置数据库的存储路径就是启动)。mongodb没有默认配置文件,需要命令指定数据存储路径。
2、Invalid command: files\mongodb\data
错误的命令,这里是因为指定的--dbpath目录中有空格,需要用双引号指定,如:
- D:\Program files\mongodb\bin>mongod --dbpath "D:\program files\mongodb\data"
3、ERROR: dbpath (D:\program files\mongodb\data) does not exist.
指定的--dbpath目录不存在,在你需要的地方新建data文件夹,然后在data文件夹内新建db文件夹。
4、Unclean shutdown detected.
存在未关闭清理的文件。mongodb在数据库连接、操作的时候都需要锁定数据库,需要在指定的存储目录下新建mongod.lock文件。如果最后一次连接或操作mongodb数据库未正确关闭,则本次连接会报错。

解决办法是先删除mongod.lock文件,然后再连接即可。
5、cmd启动mongodb
如果不想把mongodb添加到windows服务里,也可以新建一个启动mongodb.cmd文件,比如在桌面。然后用文本编辑器打开,写入以下内容:
- :: 定位到D盘
- d:
- :: 切换到mongodb的数据库目录
- cd Program files\mongodb\data
- :: 删除数据库锁定记录文件
- if exist mongod.lock del mongod.lock missing
- :: 切换到mongodb的bin目录
- cd ..\bin
- :: 配置mongodb的文档存储目录
- mongod --dbpath "D:\Program files\mongodb\data"
然后再每次需要启动mongodb的时候双击打开该文件即可。
文章来源:http://qianduanblog.com/post/nodejs-learning-8-windows-connect-mongodb-error-and-solutions.html
nodejs学习8:windows连接mongodb出现的错误解决办法的更多相关文章
- Virtualbox安装Windows 8.1遇到0x000000C4错误解决办法 - 转
想要尝试一下 Windows 8.1 系统,又不愿意在电脑上直接安装,虚拟机提供了很好的平台.因为平时工作需要,其实电脑上装的虚拟机还是不少的,每天都要开着几个虚拟机一起用.多一个不多,于是尝试在自己 ...
- node-images Windows 64-bit with Unsupported runtime 错误解决办法 及 node 历史版本下载
在做项目的时候下载的最新的10.16[2019.6.12]版本,出现了模块不兼容的问题[node-images]. 在git上发现了相同问题 https://github.com/zhangyuanw ...
- Robomongo连接MongoDB 报 Authorization failed 解决办法
首先将MongoDB安装文件的bin目录添加到环境变量Path中 如图: 这样就可以直接在cmd命令行,不需要进行目录切换,就可以直接使用啦 打开dos命令框 依次输入下图修改admin密码
- TP框架连接mongodb报错及解决办法
mongodb版本3.4.7 1.认证错误:Failed to connect to: localhost:27017: Authentication failed on database 'test ...
- 更改计算机名称后 导致 sql server 2008 R2 用windows账户不能附加的错误解决办法
出错背景:本人想用sql server 2008 R2 附加sql server 2005数据库出现拒绝访问,后查询网站得知,要用windows身份验证方式登录进去附加, 然后我就用windows身份 ...
- Windows 下mysqldump备份1045错误解决办法
一.我写的备份脚本如下 set d=%date:~0,4%%date:~5,2%%date:~8,2% C:\mysqldump -uroot -ptest@2018 --all-databases ...
- MS SQMServer2008R2 连接不到远程服务的解决办法
问题: MS SQMServer2008R2 连接不到远程服务的解决办法.程序提示的错误如下: [2017/02/19 17:46:21] 在与 SQL Server 建立连接时出现与网络相关的或特定 ...
- 分享今天在客户那里遇到的SQLSERVER连接超时以及我的解决办法
分享今天在客户那里遇到的SQLSERVER连接超时以及我的解决办法 客户的环境:SQLSERVER2005,WINDOWS2003 SP2 32位 这次发生连接超时的时间是2013-8-5 21: ...
- Windows Management Instrumentation 服务无法启动 解决办法
Win7下 Windows Management Instrumentation 服务无法启动 解决办法: 1. 以管理员身份运行cmd.exe 2. sc config Winmgmt depend ...
随机推荐
- poj1742硬币——多重背包可行性
题目:http://poj.org/problem?id=1742 贪心地想,1.如果一种面值已经可以被组成,则不再对它更新: 2.对于同一种面值的硬币,尽量用较少硬币(一个)更新,使后面可以用更多此 ...
- HDU4391(线段树+剪枝)
Paint The Wall Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) ...
- SQL 排序规则问题
http://blog.csdn.net/delphigbg/article/details/12744807 MSSQL排序规则总结 什么是排序规则呢? 排序规则根据特定语言和区域设置标准指定对 ...
- js修改页面动态添加input框显示与按钮可编辑
1. <%@ page language="java" contentType="text/html;charset=UTF-8"%> <%@ ...
- 【239】◀▶IEW-Unit04
Unit 4 Youth Issues: Computer Use 1 Model1题目及范文分析 Some teenagers spend a lot of time playing compute ...
- C#——委托(1)
什么是委托?还记得C/C++语言里的函数指针吗?委托就是他的”升级版“.先看一个简单的小程序: # include<stdio.h> typedef int(*Calc)(int a, i ...
- C++11 assert/static_assert
assert assert 是运行期断言,它用来发现运行期间的错误,不能提前到编译期发现错误,也不具有强制性,也谈不上改善编译信息的可读性,既然是运行期检查,对性能当然是有影响的,所以经常在发行版本中 ...
- SQL Server 截取两个固定字符之间的字符串(案例)
网上的问题: 参考这篇<函数PARSENAME使用和截取字符串>https://www.cnblogs.com/insus/p/10958452.html 的方法: )='||MO21|T ...
- 核心容器的两个接口(ApplicationContext和BeanFactory)引发出的问题
BeanFactory 才是Spring 容器中的顶层接口.ApplicationContext 是它的子接口. ApplicationContext 它在构建核心容器时, 创建对象采取的策略是采用立 ...
- ue4 动态增删查改 actor,bp
ue4.17 增 特殊说明:创建bp时,如果bp上随手绑一个cube,那么生成到场景的actor只执行构造不执行beginPlay,原因未知 ATPlayerPawn是c++类 直接动态创建actor ...