window下MongoDB的配置与安装
前言
MongoDB 是一个基于分布式文件存储的数据库。由C++
语言编写,支持Windows,Linux,OSX,Solaris等平台,默认端口为27017
,是一个效率非常高的nosql
数据库。
我的测试环境:window10 64位
我的安装路径:D:\mongodb
我学习mongodb的笔记本:MongoDB
配置mongodb我也遇到了两个关键性的问题,记录这篇博客希望搭建mongodb的同行者,可以顺利完成配置。
安装
下载地址:http://www.mongodb.org/downloads
选择下载版本:
我下载的是最新版本的zip格式。
需要注意的是:
1、从mongodb2.2版本开始,mongodb不在支持windowXp
参考:心知博客
PLATFORM SUPPORT
Starting in version 2.2, MongoDB does not support Windows XP. Please use a more recent version of Windows to use more recent releases of MongoDB.
2、如果运行系统为windows server 2008 R2 或者 window 7,需要进入微软官网下载补丁
IMPORTANT
If you are running any edition of Windows Server R2 or Windows , please install a hotfix to resolve an issue with memory mapped files on Windows.
并且这里需要特别注意:
下载完成后会得到一个exe
文件,但是这里并不能直接对这个文件进行安装,需要先将其解压,解压后得到 Windows6.1-KB2731284-v3-x64.msu
文件,这时候才可以进行安装,之后重启即可
3、64位的MongoDB将不能在32位的windows上运行启动
配置
1、创建一个用于存放mongodb数据的目录,
这里我创建在D:\mongodb\data\db,打开cmd(这里我用的Git Bash),进入到mongodb的bin目录,运行下面命令
mongod --dbpath="D:\mongodb\data\db"
然后出现了我遇到的第一个问题,
--29T22::02.229+ I CONTROL [initandlisten] MongoDB starting : pid= port= dbpath=C:\Program Files\MongoDB\db -bit host=Lenovo
--29T22::02.234+ I CONTROL [initandlisten] targetMinOS: Windows /Windows Server R2
--29T22::02.235+ I CONTROL [initandlisten] db version v3.4.1
--29T22::02.237+ I CONTROL [initandlisten] git version: 5e103c4f5583e2566a45d740225dc250baacfbd7
--29T22::02.238+ I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.1t-fips May
--29T22::02.240+ I CONTROL [initandlisten] allocator: tcmalloc
--29T22::02.241+ I CONTROL [initandlisten] modules: none
--29T22::02.241+ I CONTROL [initandlisten] build environment:
--29T22::02.243+ I CONTROL [initandlisten] distmod: 2008plus-ssl
--29T22::02.244+ I CONTROL [initandlisten] distarch: x86_64
--29T22::02.245+ I CONTROL [initandlisten] target_arch: x86_64
--29T22::02.246+ I CONTROL [initandlisten] options: { storage: { dbPath: "C:\Program Files\MongoDB\db" } }
--29T22::02.249+ I STORAGE [initandlisten] exception in initAndListen: Attempted to create a lock file on a read-only directory: C:\Program Files\MongoDB\db, terminating
--29T22::02.251+ I NETWORK [initandlisten] shutdown: going to close listening sockets...
--29T22::02.255+ I NETWORK [initandlisten] shutdown: going to flush diaglog...
--29T22::02.256+ I CONTROL [initandlisten] now exiting
--29T22::02.257+ I CONTROL [initandlisten] shutting down with code:
最后出现shutting down with code :100,
在心知博客我找到了答案,原因在于:我们进入的命令提示符只是普通模式,所以出现无法创建文件的问题,切换到管理员模式,重新运行命令:
然后就可以正常启动。
2、我把mongo命令添加到path环境变量中,
这样我就不需要每次都进入到mongodb下的bin中执行mongo命令了。
3、把mongodb设置为windows服务,
采用管理员:命令提示符,切换到安装mongodb目录的bin
目录,运行下面命令,把MongoDB
设置为Windows
服务:
mongod --dbpath="D:\mongodb\data\db" --logpath="D:\mongodb\data\log" --logappend --directoryperdb --serviceName "MongoDB" --serviceDisplayName "MongoDB" --install
参数解读:
--dbpath="D:\mongodb\data\db" mongodb的数据目录
--logpath="D:\mongodb\data\log" --logappend 指定日志文件。并且日志是以追加的方式输出的
--serviceName "MongoDB" --serviceDisplayName "MongoDB" windows服务器名称和显示名称为MongoDB
--directoryperdb 表示每个db都会新建一个目录
--install 进行安装,与之相对的是--remove
启动停止mongodb服务的命令
启动MongoDB:net start MongoDB
停止MongoDB:net stop MongoDB
然后我遇到了第二个问题,服务器安装成功之后,进行启动,发现无法启动,查看log日志文件,有这样的信息:
--29T23::23.705+ I CONTROL [initandlisten] options: { service: true, storage: { dbPath: "D:\mongodb\data\db", directoryPerDB: true }, systemLog: { destination: "file", logAppend: true, path: "D:\mongodb\data\log\mongodb.log" } }
--29T23::23.706+ I - [initandlisten] Detected data files in C:\Program Files\MongoDB\db created by the 'wiredTiger' storage engine, so setting the active storage engine to 'wiredTiger'.
--29T23::23.707+ I STORAGE [initandlisten] exception in initAndListen: Requested option conflicts with current storage engine option for directoryPerDB; you requested true but the current server storage is already set to false and cannot be changed, terminating
--29T23::23.707+ I NETWORK [serviceStopWorker] shutdown: going to close listening sockets...
--29T23::23.707+ I NETWORK [serviceStopWorker] shutdown: going to flush diaglog...
--29T23::23.707+ I CONTROL [serviceStopWorker] now exiting
--29T23::23.707+ I CONTROL [serviceStopWorker] shutting down with code:
大致意思就是说存储引擎冲突,(之前在命令行启动过mongodb服务,然后就在数据目录生成了数据文件)
这个时候我们可以到数据目录中找到storage.bson这个文件,删除即可。
我们可以通过添加到环境变量中的mongo命令来启动数据库,这样我们就可以通过命令行来执行一些操作了
到这里我们已经能正常使用mongodb来执行工作了,我遇到的两个问题在心知博客中也找到了答案。
后记
我的mongodb的笔记本主要是记录mongo文档的学习情况,会不断更新。
博客会分享一些开发中的心得以及学习阶段遇到的问题最后得以解决,都会坚持下去,也很开心每天都能看到博客园里有很多人分享知识。
window下MongoDB的配置与安装的更多相关文章
- windows下Mongodb图形化工具安装及配置
接上篇文章<Windows下Mongodb安装部署.docx> 一.RockMongo 1.RockMongo需要php环境,首先需要搭建php环境,选择采用 下载xampp,这里我用的是 ...
- Windows7下MongoDB的下载、安装与配置详解
一.Windows7下的运行库问题 虽然这个问题属于个例,但我觉得也有必要拿出来说说,保不齐你新装的系统就存在运行库没更新或者没装全的问题.出现这样的问题其实挺恼人的,具体表现就是系统经常会弹出警示框 ...
- window 下mongodb 配置
1.下载mongodb-win32-x86_64-2008plus-ssl-v3.6-latest 解压到 D:\mongodb 2.cmd => path是否有环境变量 如果没有请配置 3.创 ...
- Ubuntu14.04下Mongodb数据库可视化工具安装部署步骤(图文详解)(博主推荐)
不多说,直接上干货! 前期博客 Ubuntu14.04下Mongodb(离线安装方式|非apt-get)安装部署步骤(图文详解)(博主推荐) Ubuntu14.04下Mongodb官网安装部署步骤(图 ...
- window下mongodb安装和配置
mongodb安装和配置 1.下载:https://www.mongodb.com 2.解压到盘的根目录下,本人解压到D盘根目录 3.在软件根目录下新建一个文件夹data 4.再新建两个文件夹db.l ...
- window下mongodb的安装和环境搭建
一.下载安装包或者压缩包 1.下载 mongodb官网社区版下载页面 开发者一般使用社区版即可 3.6.3版本仅支持64位版本 2.安装 mongo compass是一个图形界面管理工具,安装过程非常 ...
- window下Apache-http-server(httpd-2.4.12)安装与配置
由于Apache官网改变策略(2015年1月左右),官网不再提供Apache-http-server的windows的编译版本,但是提供了几个第三方的版本 http://httpd.apache.or ...
- Linux下MongoDB单实例的安装和配置详解
推荐网站 MongoDB官网:http://www.mongodb.org/ MongoDB学习网站:http://www.runoob.com/mongodb 一.创建MongoDB的资源目录和安装 ...
- window下 mongodb快速安装
下载地址 https://www.mongodb.org/dl/win32/x86_64-2008plus-ssl 建立文件夹和文件 #数据库路径 dbpath=G:\mongodb3.4.12\da ...
随机推荐
- Python学习笔记——import模块
OS模块 直接输出系统命令到屏幕,该方法获取的命令返回值不可被赋值给变量,输出结果受编码影响会乱码: import os os.system("ipconfig") 将执行获取的系 ...
- js中嵌入jsp(html)代码的双引号转换问题--事件没反应
下面是一段今天遇到问题的代码,select中写了onchange事件 ,在没有加转义的情况下,F12解析的代码是错乱的,双引号与内容中写的不一致,还会有空格出现,经过一段时间的摸索,发现在出错的地方加 ...
- Servlet中 End event threw exception,错误404 的解决方法
End event threw exception SEVERE: End event threw exceptionjava.lang.reflect.InvocationTargetExce ...
- css 定位属性position的使用方法实例-----一个层叠窗口
运行结果: <!DOCTYPE html> <html> <head> <title>重叠样式窗口</title> <style ty ...
- angularjs初窥门径
貌似angularjs出来之后网上各种夸angularjs的好黑jquery. angularjs大致可以分为几个板块:作用域,控制器,指令(主要),路由,依赖注入. 1 作用域 作用域在angula ...
- 学习笔记TF031:实现VGGNet
VGGNet,牛津大学计算机视觉组(Visual Geometry Group)和Google DeepMind公司一起研发,深度卷积神经网络.VGGNet反复堆叠3x3小型卷积核和2x2最大池化层, ...
- ajax请求原理
首先分析使用ajax时候有那些不确定的因素 请求:1 请求的方式不确定 2 请求的地址不确定 3 请求是否异步不确定 4 发送的数据不确定 响应:5 返回的数据不确定 6 响应成功之后 需要处理的业务 ...
- 【ES】ElasticSearch初体验之使用Java进行最基本的增删改查~
好久没写博文了, 最近项目中使用到了ElaticSearch相关的一些内容, 刚好自己也来做个总结. 现在自己也只能算得上入门, 总结下自己在工作中使用Java操作ES的一些小经验吧. 本文总共分为三 ...
- Hadoop(一)Centos7虚拟机网络配置
Centos7虚拟机网络配置(桥接模式) 一 VirtualBox提供了三种工作模式,它们是bridged(桥接模式).NAT(网络地址转换模式)和host-only(主机模式). 1 桥接模式(br ...
- Redis-简单实现星形主从配置
高级参考(https://www.zhihu.com/question/21419897) 简单应用场景 现在配置redis 星形 集群, 有三台服务器, 怎样实现? 复制redis.conf两份, ...