Flag Counter
© 2017 Tao Peng. All rights reserved.

Mongodb入门(1) --- 介绍,安装,启动


2016年02月25日

接触Mongodb的时间不长,作为一个不太会SQL的渣渣猿,好好学学NoSQL这是什么鬼…额,我语无伦次了么,下面进入正题吧。

###一. Mongo介绍 MongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSql数据库中比较热门的一种。它在许多场景下可用于替代传统的关系型数据库或key/value存储方式。 Mongo使用C++开发。Mongo的官方网站地址是:MongoDB。 想要详细了解,也可点击维基百科:Mongodb维基百科

###二. 安装 首先你需要在官网下载安装包(可执行文件或者源码), 或者去github上下载。 安装的步骤就不多说了,不同的平台安装步骤都差不多。下面看一些注意点:

  • 在终端启动mongodb服务的命令是:mongod; 打开数据库的命令是:mongo。
  • 在Linux/Mac下,Mongodb默认的数据存储路径是/data/db/,Windows下是C:/data/db/。Mongodb不会自动创建这个路径,所以如果是使用默认路径, 我们需要手动创建。当然也可以指定数据存储路径,下面会详细介绍。
  • Mongodb启动的默认端口号是27017,可以打开localhost:27017来进行测试,显示内容:”It looks like you are trying to access MongoDB over HTTP on the native driver port”。

###三. Mongodb工具介绍 安装完Mongodb后,在bin目录下,有很多使用的工具,如下图所示:

1

  • bsondump: 可以将bson格式转化成人类可读的一些格式,例如json格式。
  • mongo: 客户端命令行工具,类似sqlplus/mysql,支持js语法。
  • mongod: mongodb后台服务程序,类似mysqld。
  • mongodump: 将数据库数据导出为BSON文件。
  • mongorestore: 将BSON文件恢复到数据库中。
  • mongoexport: 将数据库中的数据导出为json或者csv格式。
  • mongoimport: 将json或者csv格式数据导入到数据库中。
  • mongofiles: 用于管理存储在mongodb中的GridFS实体。
  • mongooplog: 用于从运行的mongod服务中拷贝运行日志到指定的服务器,主要用于增加备份。
  • mongoperf: 用于检查mongoDB的I/O性能的工具。
  • mongos: 是MongoDB Shard的缩写,用于数据分片,这个很重要,以后会详细介绍。
  • mongosniff: 用于监控连接到mongodb的TCP/IP的所有连接,类似于tcpdump。
  • mongostat: 用于监控当前的mongod状态,类似于Linux中的vmstat。
  • mongotop: 提供了一个跟踪mongod数据库花费在读写数据的时间,为每个collection都会记录,默认记录时间是按秒记录。

上面这些工具的具体用法见: Mongodb 工具

###四. 启动Mongodb 之前已经讲过启动mongodb的工具是:mongod,最简单的启动方法是直接在终端执行: mongod。这样的话所有的启动参数都是系统默认参数,如果想要 自己配置一些参数,那么需要在启动的时候指定。主要参数如下:

  • dbpath: 配置存放数据路径。Linux/Mac下默认的data路径是/data/db,如果自行配置,可以执行:mongod –dbpath your_path 。
  • port: 绑定的mongo端口,默认是27017, 执行: mongod –port your_port。Web管理端口在这个port的基础上+1000 。
  • bind_ip: 对外绑定的ip,一般设置为空,即绑定本机上所有可用ip,当然可以单独指定。
  • maxConns: 设置的是maxIncomingConnections,即最大连接数。mongod –macConns your_conns。
  • fork: 以守护进程的方式运行MongoDB,创建服务器进程, mongod –fork。
  • logpath: 指定MongoDB日志文件,注意是指定文件不是目录。mongod –logpath your_path。
  • logappend: 使用追加的方式写日志,注意默认是覆写模式。mongod –logappend。
  • syncdelay: 将数据写入磁盘的时间间隔,单位是秒。mongod –syncdelay your_interval。
  • repair: 修复所有数据库, mongod –repair。
  • repairpath: 修复库生成的文件的目录,默认为目录名称dbpath。

还有很多其他的参数请参考官网!

对于上面所有的参数,可以写在配置文件中,例如: params.conf,那么执行下面的代码就可以使用参数进行启动:

  • mongod –config params.conf

###五. 参考: Mongodb官方网站
Mongodb资料汇总
Mongod启动参数