本文系统 win7

参考:http://lib.csdn.net/article/mongodb/58097

     http://www.cnblogs.com/lzrabbit/p/3682510.html(没有MongoDB 服务 或者 MongoDB Windows 启动出错等等...使用 net start MongoDB  不能启动服务时,获得很多的帮助,在此感谢!)
     http://blog.sina.com.cn/s/blog_ae0830180101p2xm.html

1. 下载 mongodb,可下载 .msi 或 压缩文件,本文下载:.msi 文件,网址:http://dl.mongodb.org/dl/win32/x86_64


2. 安装 mongodb,主要步骤如下:

  • -- .msi 文件方式安装:双击 .msi 文件,一路同意,按操作提示安装即可(已实践)。

    安装过程中,你可以通过点击 "Custom(自定义)" 按钮来设置你的安装目录。

    ---压缩文件方式安装:将zip文件解压放到盘符的根目录(如C:或D:),为了方便建议文件夹命名尽量简短如(d:\mongodb)

  • 创建数据库文件的存放位置,比如d:/mongodb/data/db。启动mongodb服务之前需要必须创建数据库文件的存放文件夹,否则命令不会自动创建,而且不能启动成功。

  • 设置数据库文件的存放位置: 打开cmd(windows键+r输入cmd)命令行,进入D:\mongodb\bin目录(如图先输入d:进入d盘--然后输入cd d:\mongodb\bin),

    输入如下的命令启动 mongodb 服务:

    mongod --dbpath D:\mongodb\data\db

mongodb 默认连接端口27017,如果出现如图的情况:

看到上面的提示底部出现 waiting for connections on port 27017字样,则表示 dbpath 配置完成,且MongoDB启动成功。 
而且此时打开资源管理器,进入MongoDB的dbpath目录,内容如下: 

可以发现本地确实初始化数据库了。

验证: 可以打开http://localhost:27017查看(笔者这里是chrome),出现如图,则表示连接成功,如果不成功,可以查看端口是否被占用。

 

3. 配置 mongodb,主要步骤如下(已成功实践):

在上面的配置中,虽然启动了服务,且可以进行数据库操作,但是开两个窗口很不方便,所以可以通过配置文件,来配置windows服务。

(1) 创建目录:为您的数据库和日志文件创建目录:

 mkdir D:\MongoDB\data\db
mkdir D:\MongoDB\data\logs

(2) 创建cfg配置文件:创建一个配置文件,文件内必须设置MongoDB日志路径 systemLog.path。包扩一些其他的附加配置选项。 
例如,在在D:\MongoDB\ 下创建mongodb.conf,并在文件内指定 systemlog.path 和 storage.dbpath:

dbpath= D:\MongoDB\data\db #数据库路径
logpath= D:\MongoDB\data\logs\mongodb.log #日志输出文件路径
logappend= true #错误日志采用追加模式,配置这个选项后mongodb的日志会追加到现有的日志文件,而不是从新创建一个新文件
journal= true #启用日志文件,默认启用
quiet= true #这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为false
port= 27017 #端口号 默认为27017

(3) 命令行 设置 文件地址:

 mongod --bind_ip yourIPadress  # 默认即可,即不用设置
mongod --logpath D:\Applications\MongoDB\data\logs\mongod.log --logappend # 主要1
mongod --dbpath D:\Applications\MongoDB\data\db --directoryperdb # 主要2
mongod --port yourPortNumber # 可默认(默认端口:27017),即不用设置
mongod --serviceName "YourServiceName"
mongod --serviceDisplayName "YourServiceName" # 主要3
mongod --install

下表为mongodb启动的参数说明:

参数 描述
--bind_ip 绑定服务IP,若绑定127.0.0.1,则只能本机访问,不指定默认本地所有IP
--logpath 定MongoDB日志文件,注意是指定文件不是目录
--logappend 使用追加的方式写日志
--dbpath 指定数据库路径
--port 指定服务端口号,默认端口27017
--serviceName 指定服务名称
--serviceDisplayName 指定服务名称,有多个mongodb服务时执行。
--install 指定作为一个Windows服务安装。

强调: 在执行设置时,若出现如下问题:

其原因:官方最新版的 MongoDB 需要:  VC++2015 RC x64的支持,否则会报出

下载网址:https://www.microsoft.com/zh-cn/download/details.aspx?id=48145

可以通过命令: msinfo32    产看自己电脑的版本等系统信息。

 解决方案:安装 VC redit.exe 程序解决

   是VC的一个程序:VC redit.exe 
   链接:https://www.microsoft.com/zh-cn/download/details.aspx?id=48145, 下载时选择x86还是x64的根据自己系统的需求,安装成功就可以了。

 但是对于有些电脑系统,还会出现这些情况,提示安装失败:

 http://blog.csdn.net/huqiao1206/article/details/50768481

(4) 添加环境变量: 在环境变量PATH中加入“D:\learnEclipse\MongoDB\bin“

(5) 以Windows服务器运行MongoDB:

参考:http://blog.sina.com.cn/s/blog_ae0830180101p2xm.html

以管理员方式打开CMD窗口,运行如下命令安装MongoDB服务 or 也可以在 “控制面板\所有控制面板项\管理工具\服务”找到名为“MongoDB”的服务右键启动

  • 普通启动

    mongod --config D:\MongoDB\etc\mongodb.conf
  • 安装为Windows服务
    注:2.6版 这种方式在win7、win8 64位版无法安装成功,其他系统未测试

    mongod --config D:\MongoDB\etc\mongodb.conf --install
  • 使用 SC 安装为Windows服务

  强调:若配置了dbpath 和 logpath, 服务里没有 MongoDB 或仍不能使用net start MongoDB 启动 MongoDB服务,则采用 sc 方法,如下:(已自实践)

sc create MongoDB binPath= "D:\MongoDB\bin\mongod.exe --service --config=D:\MongoDB\etc\mongodb.conf"

(6) 启动服务:在命令行中输入net start MongoDB 启动服务,关闭命令行工具,在浏览器中查看管理控制台。也可以在可以在 “控制面板\所有控制面板项\管理工具\服务”。

如下所示:

  • 关闭和删除服务

停止 MongoDB 服务 使用以下命令:

net stop MongoDB

删除 MongoDB 服务 使用以下命令:

"D:\MongoDB\bin\mongod.exe" --remove

测试连接:

在CMD中运行如下命令,查看结果,则安装成功


4. MongoDB 可视化数据库管理工具

  • mongoVUE :比较好用,更接近plsql ,下载地址: http://www.mongovue.com/

破解版下载:https://www.ddooo.com/softdown/93678.htm#dltab

强调:先安装好 .msi 文件,一路 Next 即可(可改路径),再将 .exe 文件考到安装路径并替换掉原来的即可。

破解方法 :开始-运行-regedit-搜索:B1159E65-821C3-21C5-CE21-34A484D54444 ,然后把1,2,3项数值删除,然后重新打开mongoVUE就行了。之后MongoVUE又重置到15天的情况了。

  • robomongo:可用性略差,但能直接写shell而且有代码提示,期待他以后版本,下载地址: http://www.robomongo.org/
  • umongo : 可用性略差,但在集群尤其切片维护方面不错,下载地址:

https://github.com/agirbal/umongo


5. MongoVUE 的使用

参考:http://blog.sina.com.cn/s/blog_5fb90aaa01011p4r.html

注意:MongoVUE 不支持mongodb 3.0以上的版本  可以下载 mongochef 利用这个可以创建新的Collection  ( mongodb 3.x 是运行在 wiredTiger 引擎 )

  • 配置连接:

  • Ok,连接成功齐活儿~

 
  • 下面来试一下,创建数据库表:鼠标右键点击数据库->选择Add Collection,输入Collection Name,点击ok创建完成。插入一个新的名为 Message 的 Collection :

注意: MongoDBVUE 无法显示 collection,如下图所示:

  

原因: MongoDB新的存储引擎为wiredTiger ,在这种存储引擎下面,我们用可视化工具MongoVUE是无法看到collection的

应该更换为mmapv1引擎

  1、删除data文件夹,然后重新创建data

  2、执行mongod  --storageEngine mmapv1 --dbpath 数据目录

  

再接着重新创建 collection.

 

 
        插入字段(Document):鼠标右键点击数据库表->选择Insert Document,弹出:

 

点击 Insert, 结果如图(其中 _id 最好由数据库自己生成,以防冲突/重复/...):


6.  Robomongo 的使用

参考:http://www.2cto.com/database/201604/498288.html

  • 启动MongoDB: 这是必须的呀,一切都要基于MongoDB的启动,RoboMongo不过是取代了win+R+mongo。
  • 创建数据库(默认状态 ):  一般不使用

  • 创建数据库 : 选中mylocal(1)右键–>Create DataBase


  命名····依然想创建一个数据库放 records 信息。故,取名 recordsDB

    

  • 添加集合

(1) 使用 Mongo shall 建立数据表:  baseDB,右键–>Open shall

  yeah,you are right.现在你可以为所欲为了,呵呵,你想go die的话··· 
  展开userMassagesDB折叠

  

(2) 建立数据表:选中Collection,右键–>Create Collection

  我创建了一个名叫userMassagesList的集合。 
        

  • 插入文档(单条信息): 继续小白的选中 userMassagesList,右键–>insert Document··· , then : 

  • 查看文档 
    选中userMassagesList,右键–>Viewv Documents··· 

nodeJS学习(7)--- WS开发 NodeJS 项目-节2 <安装&设置&启动 mongodb 数据库++遇到的问题>的更多相关文章

  1. nodeJS学习(8)--- WS/...开发 NodeJS 项目-节3 <使用 mongodb 完整实例过程>

    使用 mongodb 的小系统 参考:https://my.oschina.net/chenhao901007/blog/312367 1. Robomongo 创建项目的数据库和数据表 参考:htt ...

  2. NodeJS学习笔记 进阶 (1)Nodejs进阶:服务端字符编解码&乱码处理(ok)

    个人总结:这篇文章主要讲解了Nodejs处理服务器乱码及编码的知识,读完这篇文章需要10分钟. 摘选自网络 写在前面 在web服务端开发中,字符的编解码几乎每天都要打交道.编解码一旦处理不当,就会出现 ...

  3. NodeJS学习笔记 进阶 (13)Nodejs进阶:5分钟入门非对称加密用法

    个人总结:读完这篇文章需要5分钟,这篇文章讲解了Node.js非对称加密算法的实现. 摘录自网络 地址: https://github.com/chyingp/nodejs-learning-guid ...

  4. NodeJS学习笔记 进阶 (12)Nodejs进阶:crypto模块之理论篇

    个人总结:读完这篇文章需要30分钟,这篇文章讲解了使用Node处理加密算法的基础. 摘选自网络 Nodejs进阶:crypto模块之理论篇 一. 文章概述 互联网时代,网络上的数据量每天都在以惊人的速 ...

  5. idea开发web项目框架失效和无法启动问题

    不会配置idea的javaweb环境的小伙伴可以点击此链接 idea最新版,配置javaweb环境 很多小伙伴用idea开发web项目可能会出现所有代码都写对了但是无论如何都没法运行的情况,eclip ...

  6. NodeJS学习日记--环境配置及项目初始化

    在node.js官网下载nodejs安装包 安装完成后打开控制台,输入 npm -version 如果正确显示npm版本则安装成功. 创建项目之前先要安装以下全局扩展模块 npm install -g ...

  7. nodeJS学习(9)--- nodeJS模块:exports vs module.exports

    模块简介: 通过Node.js的官方API可以看到Node.js本身提供了很多核心模块 http://nodejs.org/api/ 这些核心模块被编译成二进制文件,可以 require('模块名') ...

  8. NodeJS学习笔记 进阶 (11)Nodejs 进阶:调试日志打印:debug模块

    个人总结:读完这篇文章需要5分钟,讲解了debug模块的使用 摘选自网络 前言 在node程序开发中时,经常需要打印调试日志.用的比较多的是debug模块,比如express框架中就用到了.下文简单举 ...

  9. nodeJS学习(11)--- nodeJS 取参 -- req.body & req.query & req.params

    参考:https://my.oschina.net/u/2519530/blog/535309 获取请求中的参数是每个web后台处理的必经之路,nodejs的 express框架 提供了四种方法来实现 ...

随机推荐

  1. Bootstrap历练实例:弹出框(popover)事件

    事件 下表列出了弹出框(Popover)插件中要用到的事件.这些事件可在函数中当钩子使用. 事件 描述 实例 show.bs.popover 当调用 show 实例方法时立即触发该事件. $('#my ...

  2. KVM修改虚机网卡模式:由NAT模式改为Bridge模式

    1)关闭虚机# virsh  shutdown  vm1 2)编辑虚机配置文件# virsh  edit  vm1 <interface type='default'> 改为<int ...

  3. 1143: [CTSC2008]祭祀river

    Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 4018  Solved: 2048[Submit][Status][Discuss] Descript ...

  4. BZOJ1576: [Usaco2009 Jan]安全路经Travel(最短路 并查集)

    题意 给你一张无向图,保证从1号点到每个点的最短路唯一.对于每个点求出删掉号点到它的最短路上的最后一条边(就是这条路径上与他自己相连的那条边)后1号点到它的最短路的长度 Sol emmm,考场上想了个 ...

  5. cf540D. Bad Luck Island(概率dp)

    题意 岛上有三个物种:剪刀$s$.石头$r$.布$p$ 其中剪刀能干掉布,布能干掉石头,石头能干掉剪刀 每天会从这三个物种中发生一场战争(也就是说其中的一个会被干掉) 问最后仅有$s/r/p$物种生存 ...

  6. 14.2-ELK 经典用法—企业自定义日志收集切割和mysql模块

    本文收录在Linux运维企业架构实战系列 一.收集切割公司自定义的日志 很多公司的日志并不是和服务默认的日志格式一致,因此,就需要我们来进行切割了. 1.需切割的日志示例 2018-02-24 11: ...

  7. Shell脚本使用汇总整理——文件夹及子文件备份脚本

    Shell脚本使用汇总整理——文件夹及子文件备份脚本 Shell脚本使用的基本知识点汇总详情见连接: https://www.cnblogs.com/lsy-blogs/p/9223477.html ...

  8. 20190103(GIL,池,阻塞,同步异步)

    GIL锁 什么是GIL GIL全局解释器锁,是防止多个线程在同一时间同时执行的.CPython解释器特有的一种互斥锁. 每一个py文件都会有自己的解释器,也就是说不同py文件的GIL都是独立的, ps ...

  9. 栈经典列题:Rails

    解题心得: 1.这题是先进后出的顺序,所以使用栈(先进后出表). 2.搞清楚题意,需要达成的序列和进入的序.不要弄混了. 3.思维混乱的时候要冷静,冷静,冷静~~~~! 题目: Description ...

  10. Android 自定义 radiobutton

    <RadioButton android:id="@+id/radiobutton_pay_method" android:layout_width="30dp&q ...