今天遇到了在windows下连接mongodb错误的情况,因为之前安装是正常的,而重启的电脑之后就再也连接不上。于是在群里求助了下,无果,查阅了官网的英文文档,终于有些眉目了,故此一记。

先吐槽下命令行这种违背历史潮流的东西。

1、exception: connect failed

连接失败,一般是尚未启动mongodb(其实是配置数据库的存储路径就是启动)。mongodb没有默认配置文件,需要命令指定数据存储路径。

2、Invalid command: files\mongodb\data

错误的命令,这里是因为指定的--dbpath目录中有空格,需要用双引号指定,如:

  1. 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文件,比如在桌面。然后用文本编辑器打开,写入以下内容:

  1. :: 定位到D盘
  2. d:
  3. :: 切换到mongodb的数据库目录
  4. cd Program files\mongodb\data
  5. :: 删除数据库锁定记录文件
  6. if exist mongod.lock del mongod.lock missing
  7. :: 切换到mongodb的bin目录
  8. cd ..\bin
  9. :: 配置mongodb的文档存储目录
  10. 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出现的错误解决办法的更多相关文章

  1. Virtualbox安装Windows 8.1遇到0x000000C4错误解决办法 - 转

    想要尝试一下 Windows 8.1 系统,又不愿意在电脑上直接安装,虚拟机提供了很好的平台.因为平时工作需要,其实电脑上装的虚拟机还是不少的,每天都要开着几个虚拟机一起用.多一个不多,于是尝试在自己 ...

  2. node-images Windows 64-bit with Unsupported runtime 错误解决办法 及 node 历史版本下载

    在做项目的时候下载的最新的10.16[2019.6.12]版本,出现了模块不兼容的问题[node-images]. 在git上发现了相同问题 https://github.com/zhangyuanw ...

  3. Robomongo连接MongoDB 报 Authorization failed 解决办法

    首先将MongoDB安装文件的bin目录添加到环境变量Path中 如图: 这样就可以直接在cmd命令行,不需要进行目录切换,就可以直接使用啦 打开dos命令框 依次输入下图修改admin密码

  4. TP框架连接mongodb报错及解决办法

    mongodb版本3.4.7 1.认证错误:Failed to connect to: localhost:27017: Authentication failed on database 'test ...

  5. 更改计算机名称后 导致 sql server 2008 R2 用windows账户不能附加的错误解决办法

    出错背景:本人想用sql server 2008 R2 附加sql server 2005数据库出现拒绝访问,后查询网站得知,要用windows身份验证方式登录进去附加, 然后我就用windows身份 ...

  6. Windows 下mysqldump备份1045错误解决办法

    一.我写的备份脚本如下 set d=%date:~0,4%%date:~5,2%%date:~8,2% C:\mysqldump -uroot -ptest@2018 --all-databases ...

  7. MS SQMServer2008R2 连接不到远程服务的解决办法

    问题: MS SQMServer2008R2 连接不到远程服务的解决办法.程序提示的错误如下: [2017/02/19 17:46:21] 在与 SQL Server 建立连接时出现与网络相关的或特定 ...

  8. 分享今天在客户那里遇到的SQLSERVER连接超时以及我的解决办法

    分享今天在客户那里遇到的SQLSERVER连接超时以及我的解决办法 客户的环境:SQLSERVER2005,WINDOWS2003 SP2  32位 这次发生连接超时的时间是2013-8-5  21: ...

  9. Windows Management Instrumentation 服务无法启动 解决办法

    Win7下 Windows Management Instrumentation 服务无法启动 解决办法: 1. 以管理员身份运行cmd.exe 2. sc config Winmgmt depend ...

随机推荐

  1. bzoj 3232 圈地游戏——0/1分数规划(或网络流)

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3232 当然是0/1分数规划.但加的东西和减的东西不在一起,怎么办? 考虑把它们合在一起.因为 ...

  2. python optparse命令解析模块

    来源:http://www.cnblogs.com/pping/p/3989098.html?utm_source=tuicool&utm_medium=referral 来源:http:// ...

  3. Python 中的 classmethod 和 staticmethod 有什么具体用途?

    作者:李保银链接:https://www.zhihu.com/question/20021164/answer/18224953来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...

  4. DCloud-HTML5+:barcode

    ylbtech-DCloud:barcode&camera 1.返回顶部 1. http://www.html5plus.org/doc/zh_cn/barcode.html 2. Barco ...

  5. GridView中数据行的操作

    一个是直接动态绑定gridview 用3楼的办法就可以了 int j=1;//j的数值表示你要取的那一列的索引,要取第二列,j就设为1for (int i = 0; i < this.GridV ...

  6. java类加载器(转)

    类加载器是 Java 语言的一个创新,也是 Java 语言流行的重要原因之一.它使得 Java 类可以被动态加载到 Java 虚拟机中并执行.类加载器从 JDK 1.0 就出现了,最初是为了满足 Ja ...

  7. 4、map和Tuple

    一.map 1.创建map //创建一个不可变的Map scala> val ages = Map("Leo" -> 30, "Jen" -> ...

  8. python反编译之字节码

    如果你曾经写过或者用过 Python,你可能已经习惯了看到 Python 源代码文件:它们的名称以.Py 结尾.你可能还见过另一种类型的文件是 .pyc 结尾的,它们就是 Python "字 ...

  9. 集成Python Shell

    每次启动shell会话都要导入Python相关对象(数据库实例和模型),这是件十分枯燥的工作.为了避免一直重复导入,我们可以做些配置,让flask-script的shell命令自动导入特定的对象. F ...

  10. JQ下拉加载更多

    <!DOCTYPE=html> <html> <head> <script src="jquery-1.4.2.min.js" type= ...