mongodb的安装

1.下载mongodb: www.mongodb.org  下载最新的stable版:我下载的版本是3.2.5

2.解压文件

3.不用编译本身就是编译后的二进制可执行文件

打开我们下载解压好的bin目录如下:


bin文件中的内容;

bsondump: 导出bson结构
mongo: 客户端(相当于mysql.exe)
mongod: 服务器(相当于mysqld.exe)
mongodump: 整体数据库导出(二进制,相当于mysqldump)
mongoimport: 导出易识别的json文档或csv文档
mongorestore: 数据库整体导入
mongos: 路由器(分片时用)

4.启动mongod服务

/bin/mongod --dbpath /path/to/database --logpath /path/to/log --fork --port 27017

参数解释
dbpath:数据存放目录
logpath:日志存储目录
port:运行端口(默认27017)
fork:后台进程运行

5.错误情况:

mongodb非常占用磁盘空间,启动时要占3-4G左右,所以我们要选一个容量相对大的空间存储数据库文件和日志文件,如果是虚拟机的话,可以加上一句--smallfiles 来启动;

我遇到的问题:

我也是学习通过上面的步骤来进行连接mongodb的,但是遇到了不少困难,下面我讲一下我是怎么解决的:

首先我解压好了按照上面的启动命名来启动服务,遇到了这个问题:

我在网上查了一下:基本都是关于没有正确退出mongodb的答案,就是删除数据库中的mongo.lock文件就好了,但是我打开数据库存储路径,却没有看到这个lock文件。因为第一次就没开启成功,不会存在这个没正确退出的问题。之后我打开了自己的日志文件,看到了如下的解释:

看到这里就基本明白了,然后查了写资料,原来mongodb自3.0版本后新增了wiredTiger的数据存储引擎, 3.2版本后默认采用的wiredTiger, 不知道为何, 我的这个版本不能使用该引擎? 这个问题应该是这样的,于是就按照上面提示的思路:在启动的命令后面加上了--storageEngine=mmapv1  ,指定用这个存储引擎,然后再次启动,之后成功了。

之后到了启动客户端的时候了,但是又遇到了问题,解决办法是我之前用的端口是27019,和默认配置的的端口不同,改成27017就可以了。

连接好的结果如下:

mongodb入门很简单(2)的更多相关文章

  1. mongodb入门很简单(3)

     ##简单的mongodb入门命令## 1.show dbs;      //查看当前数据库 2.use databaseName;         //选库 3.show tables/collec ...

  2. mongodb入门很简单(1)

    mongodb简介: 如前边介绍的两个键-值数据库: memcached和redis属于(key/value)数据库: 而mongodb是文档数据库:存储的是文档(Bson->json的二进制) ...

  3. Redis入门很简单之七【使用Jedis实现客户端Sharding】

    Redis入门很简单之七[使用Jedis实现客户端Sharding] 博客分类: NoSQL/Redis/MongoDB redisjedisspringsharding分片 <一>. 背 ...

  4. Redis入门很简单之五【Jedis和Spring的整合】

    Redis入门很简单之五[Jedis和Spring的整合] 博客分类: NoSQL/Redis/MongoDB redisnosql缓存jedisspring  在上一篇文章中,简单介绍了Jedis的 ...

  5. Redis入门很简单之四【初识Jedis】

    Redis入门很简单之四[初识Jedis] 博客分类: NoSQL/Redis/MongoDB redisnosql缓存jedis  使用Jedis提供的Java API对Redis进行操作,是Red ...

  6. Redis入门很简单之三【常见参数配置】

    Redis入门很简单之三[常见参数配置] 博客分类: NoSQL/Redis/MongoDB redisnosql缓存中间件memcached  Redis的一下常见设置都是通过对redis.conf ...

  7. Redis入门很简单之二【常见操作命令】

    Redis入门很简单之二[常见操作命令] 博客分类: NoSQL/Redis/MongoDB redisnosql缓存  Redis提供了丰富的命令,允许我们连接客户端对其进行直接操作.这里简单介绍一 ...

  8. Redis入门很简单之一【简介与环境搭建】

    Redis入门很简单之一[简介与环境搭建] 博客分类: NoSQL/Redis/MongoDB redisnosqlmemcached缓存中间件  [Redis简介] <一>. NoSQL ...

  9. 踢爆IT劣书出版黑幕——由清华大学出版社之《C语言入门很简单》想到的(1)

    1.前言与作者 首先声明,我是由于非常偶然的机会获得<C语言入门很简单>这本书的,绝对不是买的.买这种书实在丢不起那人. 去年这书刚出版时,在CU论坛举行试读推广,我当时随口说了几句(没说 ...

随机推荐

  1. 160513、nginx+tomcat集群+session共享(linux)

    第一步:linux中多个tomcat安装和jdk安装(略) 第二步:nginx安装,linux中安装nginx和windows上有点不同也容易出错,需要编译,这里做介绍 一.安装依赖 gcc open ...

  2. Zabbix添加web页面监控告警

    一,选择添加了web监控的主机 二,创建一个告警触发器 三,定义监控项 设置完毕假如网站down就会触发告警 怎么设置web监控以及触发告警action参考 Zabbix使用SMTP发送邮件报警并且制 ...

  3. Spring Data CrudRepository增删改查方法(八)

    CrudRepository   的主要方法 long count(); boolean exists(Integer arg0); <S extends StudentPO> S sav ...

  4. 解决MySQL数据库同步1236错误

    1.报错如下: Got fatal error from master when reading data from binary log: 'The slave is connecting usin ...

  5. python常见模块之random模块

    import random print(random.random()) #随机产生一个0-1之间的小数 print(random.randint(1,3)) #随机产生一个1-3之间的整数,包括1和 ...

  6. python小数据池,代码块的最详细、深入剖析

    代码块: Python程序是由代码块构造的.块是 一个python程序的文本,他是作为一个单元执行的. 代码块:一个模块,一个函数,一个类,一个文件等都是一个代码块. 而作为交互方式输入的每个命令都是 ...

  7. oracle查看被锁的表和被锁的进程,杀掉进程

    -- 1. 查看被锁的表 SELECT p.spid, a.serial#, c.object_name, b.session_id, b.oracle_username,b.os_user_name ...

  8. Java集合—集合框架

    前言 在Java语言中,Java语言的设计者对常用的数据结构和算法做了一些规范(接口)和实现(具体实现接口的类).所有抽象出来的数据结构和操作(算法)统称为Java集合框架(JavaCollectio ...

  9. UVA10763:Foreign Exchange&&UVA10340: All in All(水题)

    10763:水题不解释直接贴代码. #include <iostream> #include <string.h> #include <stdio.h> #incl ...

  10. PAT 1140 Look-and-say Sequence [比较]

    1140 Look-and-say Sequence (20 分) Look-and-say sequence is a sequence of integers as the following: ...