详细图解mongodb 3.4.1 win7x64安装

原文:http://www.cnblogs.com/yucongblog/p/6895983.html

 

详细图解,记录 win7 64 安装mongo数据库的过程。安装的版本是 MongoDB-win32-x86_64-2008plus-ssl-3.4.1-signed。

我下载的源文件:mongodb-win32-x86_64-2008plus-ssl-3.4.1-signed
我的系统:win 7 64 bit 8g内存
为了方便下载,我把我当时下载的这个包,放在某度的云盘上。
链接:http://pan.baidu.com/s/1o80MF1o 密码:fi3k

 

下载和安装,图有点多,不怕啰嗦,就怕不够。

注意这个安装的位置,下面要用呢。

图上的说的是刚刚安装完的时候的样子,打错字啦。

 

1. 创建几个文件夹具体如下:数据库路径(data目录)、日志路径(logs目录)和日志文件(mongo.log文件)

注意文件夹的前后对比:

 

2. 创建配置文件mongo.conf,文件内容如下:

  1. #数据库路径  
  2. dbpath=D:\Mongo\data  
  3. #日志输出文件路径  
  4. logpath=D:\Mongo\logs\mongo.log  
  5. #错误日志采用追加模式  
  6. logappend=true  
  7. #启用日志文件,默认启用  
  8. journal=true  
  9. #这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为false  
  10. quiet=true  
  11. #端口号 默认为27017  
  12. port=27017   


3. 启动MongoDB服务

mongod --config "D:\Mongo\mongo.conf" 
这个是使用自己刚刚在上面配置的配置文件来启动服务的。注意修改成自己的目录位置。额,这个当然是在cmd命令行窗口的对应安装bin目录下拉

这个是在cmd命令行下执行这个命令的,执行完之后,命令行,似乎没什么太大的变动,然后你继续执行下面的步骤。

这个步骤的截图,在下面的第四步里面是可以看到这个步骤的命令执行效果的。可以先看下下面的那个步骤图。
命令执行后,浏览器中输入http://127.0.0.1:27017看到如下界面即说明启动成功

有的可能在这里失败了,也许页面并没有这么显示,但是不要紧,你看看刚刚的那个data目录下有没有文件生成,还有log文件有没有内容。如果有,那么就是服务启动了,

还可以再,任务管理器里面,看看有没有这么个mongo的服务存在。都是可以判断这个服务启动OK没有。

 

4. 创建并启动MongoDB服务
如果每次都如上操作,岂不是相当麻烦,按照如下命令来创建并启动MongoDB服务,就可以通过windows服务来管理MongoDB的启动和关闭了

mongod --config "D:\Mongo\mongo.conf"  --install --serviceName "MongoDB"
net start MongoDB

上面是2行的命令

 

这个服务的启动,是有点特殊的。是不需要登录验证的,就是没有密码也可以登录。

具体看下图。这个是用mongoVUE登录看到的效果

等一下,图上的描述不是很正确,应该是我就创建了一个数据库叫lxkdb,上面的另外的2个一个叫admin,和local都是安装完mongo db之后,自动生成的数据库。

也可以看到上面并不存在一个叫test的数据库,所以说,系统默认存在一个叫test数据库的说法是错误的。下面还会解释这个问题。

这句话是后来更新的:上面说这个test不存在,也不完全对,具体看最下面的解释吧。先不在意这个

其中admin这个数据库存放的是用户信息。

关于这个用户信息,不是我们想的那么简单的只是存个用户名和密码就完了。

MongoDB 缺省是没有设置权限的,也就是说,没有设置访问权限。上面的启动方式就是没有设置权限的启动,所以,登录数据库,是不需要验证用户名和密码的。
这就意味着只要知道 MongoDB 服务器的端口,任何能访问到这台服务器的人都可以查询和操作 MongoDB 数据库的内容。
也就是像我上面测试的那样,啥也不输入,都可以直接测试连接OK。


所以加上 --auth 这样以后就可以使用用户名和密码后才能进行MongoDB的相关操作
 MongoDB 的用户和权限,这个有点复杂,先有个印象。
数据库用户有两种,一种是管理员,用来管理用户,一种是普通用户,用来访问数据。

(后面我会继续说说这个两种权限的数据库用户是到底怎么在用的)

 

注意:

下面这个带权限控制的安装服务,你呢,暂时先别整,这个权限你要是开了的话,必须先在数据库里面建个账户和密码。

这个就像你在把锁锁住之前得先准备好钥匙的道理似的。所以,在你不了解这个权限的情况下,暂时还不是先不加这个权限控制。

等看了怎么新建管理用户和一般数据库用户之后再打开这个权限。后面我再好好总结一下。

 

关于--安全和认证--的解释:

 

每个MongoDB实例中的数据库都可以有许多用户。如果开启了安全性检查,则只有数据库认证用户才能执行读或者写操作。

在认证的上下文中,MongoDB会将普通的数据作为admin数据库处理。admin数据库中的用户被视为超级用户(即管理员)。

在认证之后,管理员可以读写所有数据库,执行特定的管理命令,如listDatabases和shutdown。

在开启安全检查之前,一定要至少有一个管理员账号。

 

后面跟链接:详细图解记录 win7 64 mongodb 新建管理者账户和一般账户的例子

 

(这个你刚刚开始学习的时候,可以先不开权限验证,那么在登录数据库的时候,就不需要账号和密码,操作也简单。)

(以下操作是,打开权限认证,使用数据库之前,必须先验证一下,才可以继续,Authentication,也就是经常会看到这个单词。)

然后,把这个服务给卸载了(下面有讲解怎么卸载这个服务,我这就不重复啦),然后再次注册个服务的话,命令多添加个 --auth。

mongod --config "D:\Mongo\mongo.conf"  --auth --install --serviceName "MongoDB"
net start MongoDB

也可以在配置文件里面再加一个auth=true的配置。效果差不多吧。

然后就不能没有密码直接登录啦。

 

注意啦:这个mongoVUE的版本太低了,导致即使你账号密码OK,还是会出现异常的情况,在我经历了多次卸载重装服务之后,换了个mongo数据库工具,特么的可算是OK了。

那就暂时先不管这个工具的报错了吧。下一篇我示范如何使用这个数据库,在这知道这个权限问题,就好。

而且这个权限问题,很是麻烦。

刚刚安装好的mongo服务有个默认的数据库,test,user 的name和pwd都是test。如下图。(这句话,在下面被推翻,理论不成立。)

点test,测试一下,连接是不是OK的。然后就有上图了

本来我是看别人的文章上说,mongo刚刚安装完毕的时候,是有个test数据库,然后用户名和密码都是test,然后我用那个mongoVUE这个可视化工具测试了下。
发现测试连接是OK的,也就是如图上所示。然后我就 以为真的是有这个数据库存在的,但是后来又想了想,不对呀,好像不是这样的。
后面我反复测试那个权限问题的时候,发现,这个mongoVUE,即使你不填写用户名和密码,随便填写个数据库名称,然后测试连接,也是可以测试OK的。

但是我用另一个新发现的mongo数据库工具,就没有这个问题。

而且也用这个mongo数据库工具,可以看到那个 --auth的效用还是存在的,就是这个时候,必须得有账户名和密码才可以使用数据库。

我这个暂时还没测试,无权限管控的启动服务,然后用这个登录数据库看看啥情况。
有空了,或者,看官你测试一下呗。就是刚刚没加--auth启动服务的时候,是不是不用账户密码,就可使用这个工具连上数据库。

这个连接数据库的工具的网址,算是个开源的项目吧。

Robomongo 0.9.0
http://blog.robomongo.org/robomongo-0-9-0-final/
我下载的到某度云盘的分享
链接:http://pan.baidu.com/s/1bp8ALDP 密码:iaie

两个工具比较之后,可以发现这个mongoVUE的版本确实太低了。下一篇 有这个mongoVUE的版本图。

 

如果需要卸载MongoDB服务,则还是在bin目录下,
mongod.exe --remove --serviceName "MongoDB"

然后这个服务就删除了,然后你再在那个任务管理器里面就看不到这个服务啦。说明他就被干掉了。删除啦。

 

上面介绍的是从安装mongo服务到卸载mongo服务,都是有图有真相。

下面介绍一些其他的东西。

 

以后要是想停止这个服务,你就右键,启动任务管理器,选上面的服务,然后右下角的“服务(s)...”,然后找到那个名为MongoDB的系统服务,关掉就可以啦。



至此,所有操作已完成,服务已成功安装。
我就暂时先把这个mongo的数据库在我的电脑上装好,具体怎么使用。以后再说。

 

这个 时候,再看刚刚我们新建的data文件夹和mongo.log两个文件的时候就发现里面有数据啦,也可以说明,这一路的操作都很OK的。

额,呵呵,就是我这图上传的有点多。。。

 

最后,每次要在命令行使用mongo命令,都得进入到对应的bin目录下,这样很是麻烦,何不配置个系统环境变量,方便直接使用,这个mongo命令

 

这样就可以直接在cmd命令行,不需要进行目录切换,就可以直接使用啦

 

关于数据库里面的test数据库存在与否的解释:

 

下一篇具体讲解怎么新建普通的数据库用户和数据库管理者用户。

也就是上面你看到两个数据库是以及登录数据库的账号和密码是怎么设置的。

(这个我已经把链接添加在文章内部了。可以点击链接查看。)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/541328.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux用ping命令测试网速,linux下面使用命令测试网速

大家都知道在speedtest是市面上最准确最全面的测速工具,但在linux命令行不能直接使用,所以我们就借助脚本调用speedtest的接口来利用他测试网速。1.下载speedtest-cli脚本:下载地址:https://raw.githubusercontent.com/sivel/spee…

rocksdb ubuntu c++源码编译测试

2019独角兽企业重金招聘Python工程师标准>>> 环境: ubuntu16.4 需要安装 snappy gflage bz2 zstd 以及g 其中zstd是facebook开放源代码里的压缩的库 git clone https://github.com/facebook/rocksdb.git cd rocksdb make static_lib 成功生成 librocksd…

NABARD的完整形式是什么?

NABARD:国家农业和农村发展银行 (NABARD: National Bank for Agriculture and Rural Development) NABARD is an abbreviation of National Bank for Agriculture and Rural Development. NABARD是国家农业和农村发展银行的缩写 。 On 12 July 1982, it was establ…

基于opencv+Dlib的面部合成(Face Morph)

引自:http://blog.csdn.net/wangxing233/article/details/51549880 零、前言 前段时间看到文章【1】和【2】,大概了解了面部合成的基本原理。这两天空下来了,于是参考【3】自己实现了下。虽然【1】和【2】已经讲的很清楚了,但是有…

大脑应对危机的模式_危机的完整形式是什么?

大脑应对危机的模式危机:印度信用评级信息服务有限公司 (CRISIL: Credit Rating Information Services of India Limited) CRISIL is an abbreviation of Credit Rating Information Services of India Limited. It is an international analytic company which off…

linux网络延迟命令,2. Linux使用ping命令查看网络延迟

ping命令持续发送少量互联网流量到远程地址并报告收到回应的总时间。如果流量因为网络故障或者错误配置而被丢弃,它也会报告。ping命令是最基本和初级的诊断网络问题的工具之一。ping常被用来测试网络延迟,但是有时ping的延迟并不是网络引起的&#xff0…

linux查看磁盘io带宽,[Linux] 磁盘IO性能查看和优化以及iostat命令

iostat命令:%user:CPU处在用户模式下的时间百分比。%nice:CPU处在带NICE值的用户模式下的时间百分比。%system:CPU处在系统模式下的时间百分比。%iowait:CPU等待输入输出完成时间的百分比。%steal:管理程序维护另一个虚…

Jsoup 数据修改

2019独角兽企业重金招聘Python工程师标准>>> 1 设置属性的值 在解析一个Document之后可能想修改其中的某些属性值,然后再保存到磁盘或都输出到前台页面。 可以使用属性设置方法 Element.attr(String key, String value), 和 Elements.attr(String key, S…

软件静态架构 软件组件图_组件图| 软件工程

软件静态架构 软件组件图什么是组件图? (What is Component Diagram?) A Component Diagram breaks down the real system under development into different heights of working. Every component is reactive for the main aim in the entire system and only re…

如何卸载非linux系统分区,如何卸载Linux系统分区?卸载Linux系统分区的方法-站长资讯中心...

系统为windows xp sp2和redhat as 5双系统,其中linux系统后安装的在D盘,华彩软件站www.huacolor.com小编今天发现硬盘不够用了,想干掉linux分区,在虚拟机中用linux。就在windows的磁盘管理(命令为:diskmgmt)下删除linux分区&#…

顺序结构复习

复习一些易错知识点还有习题 目录 可能不熟悉的知识点 逻辑表达式的求解 if,else的配队 条件运算符 运算符优先级的问题 switch的使用 goto和if构成的循环 例题讲解 1 2 3 4 ​编辑 5 ​编辑 6赋值 ​编辑 7 可能不熟悉的知识点 逻辑表达式的求解 如果…

模板模式(部分方法延迟到子类实现)

项目中,用到了抽象类作为父类,有部分实现。 提供了了模板方法作为子类公共方法,模板方法中调用了抽象类的抽象方法和部分非抽象方法。 执行代码时,发现模板方法调用了抽象类的抽象方法,当时比较好奇,后来发…

【转载】浏览器缓存详解:expires cache-control last-modified

下面的内容展示了一个常见的 Response Headers,这些 Headers 要求客户端最多缓存 3600 秒,也给出了一个 pub1259380237;gz 的校验值。 HTTP/1.x 200 OK Transfer-Encoding: chunked Date: Sat, 28 Nov 2009 04:36:25 GMT Server: LiteSpeed Connection: …

linux下php的安装,Linux下PHP安装

1 下载php源码安装包 个人是php-5.6.30.tar.gzphp2 解压文件mysqltar -zxvf php-5.6.30.tar.gznginx3 编译安装sqlcd php-5.6.30api建立www用户和www用户组curlgroupadd wwwsocketuseradd -g www wwwphp-fpm在编译以前先把依赖包都装上urlyum install curl curl-develyum inst…

微软宣布以 262 亿美元现金收购 LinkedIn

北京时间6月13日20:45(美国当地时间6月13日上午8:45),微软(Nasdaq: MSFT)和LinkedIn(领英,NYSE: LNKD)对外宣布,双方达成协议,微软宣布将以每股196美元、总价262亿美元的价格收购LinkedIn,由现金…

本月初 本月末 java_本月内容作家(2018年8月)

本月初 本月末 javaWe are feeling glad to announce that Prerana Jain is the Content Writer Of The Month (August 2018) on the basis of her excellent contribution and her support to us. 我们很高兴地宣布, Prera​​na Jain凭借其出色的贡献和对我们的支…

c语言案例朗读工具源码,C语言编写简单朗读小工具(有源码)

原标题:C语言编写简单朗读小工具(有源码)最近不少人在后台留言说学C都是面对枯燥的控制台程序,能不能体现一下C语言的实际用途,今天我们就理论结合实践一把:C语言结合VBS脚本编写一个简单的朗读小工具,做一个能够发音的…

WAS集群系列(5):集群搭建:步骤3:安装IHS软件

选择“安装IBM HTTPServer”选项,点击“安装向导”。例如以下图提示: 安装提示,逐步点击“下一步”,当中偶有几处细节注意就可以。列举例如以下: (1)、产品安装路径与先前WAS软件所安装路径统一…

WordPress数据表wp-options数据字段存JSON数据

2019独角兽企业重金招聘Python工程师标准>>> wp_options表是WordPress中最重要的表,一切程序设置、主题设置和绝大多数插件的设置大都保存在此表。 WordPress里面数据表wp-options数据字段存JSON数据 : a:90: {s:11:"^wp-json/?$"…

css scroll属性_CSS中的scroll-behavior属性

css scroll属性CSS | 滚动行为属性 (CSS | scroll-behavior property) Who does not want their links to function smoothly and attractively? This type of functionality is very easy to implement. All you need is a bit of awareness about the property that would h…