MongoDB是一个高性能,开源。无模式的文档型数据库。是当前NoSql数据库中比較热门的一种。它在很多场景下可用于替代传统的关系型数据库或键/值存储方式。
Mongo使用C++开发。Mongo的官方站点地址是:http://www.mongodb.org/。读者能够在此获得更具体的信息。
小插曲:什么是NoSql? |
NoSql,全称是 Not Only Sql,指的是非关系型的数据库。下一代数据库主要解决几个要点:非关系型的、分布式的、开源的、水平可扩展的。原始的目的是为了大规模web应用,这场运动開始于2009年初,通常特性应用如:模式自由、支持简易复制、简单的API、终于的一致性(非ACID)、大容量数据等。 NoSQL被我们用得最多的当数key-value存储。当然还有其它的文档型的、列存储、图型数据库、xml数据库等。
|
特点:
- 高性能、易部署、易使用,存储数据很方便。主要功能特性有:
- 面向集合存储。易存储对象类型的数据。
- 模式自由。
- 支持动态查询。
- 支持全然索引,包括内部对象。
- 支持查询。
- 支持复制和故障恢复。
- 使用高效的二进制数据存储,包括大型对象(如视频等)。
- 自己主动处理碎片,以支持云计算层次的扩展性
- 支持Python。PHP,Ruby。Java,C,C#,Javascript,Perl及C++语言的驱动程序,社区中也提供了对Erlang及.NET等平台的驱动程序。
- 文件存储格式为BSON(一种JSON的扩展)。
- 可通过网络訪问。
功能:
适用场合:
二、下载安装和配置
windows下安装Mongo数据库:
在公布本文的时间官方提供的最新版本号是:1.6.5 。假设不做特殊声明,本教程所用的版本号将会是这个版本号。
- 第一步:下载安装包:假设是win系统。注意是64位还是32位版本号的,请选择正确的版本号。
- 第二步:新建文件夹“D:\MongoDB”,解压下载到的安装包。找到bin文件夹以下所有.exe文件。复制到刚创建的文件夹下。
- 第三步:在“D:\MongoDB”文件夹下新建“data”文件夹,它将会作为数据存放的根文件夹。
注:官方下载地址:http://www.mongodb.org/downloads
配置Mongo服务端:
打开CMD窗体,依照例如以下方式输入命令:
> d:
> cd D:\MongoDB
> mongod --dbpath D:\MongoDB\data
配置成功后会看到例如以下画面:
在浏览器输入:http://localhost:27017/,能够看到例如以下提示:
You are trying to access MongoDB on the native driver port. For http diagnostic access, add 1000 to the port number
如此。MongoDB数据库服务已经成功启动了。
linux下安装和配置mongodb
步骤一:下载文件
对于32位的linux
$ curl http://downloads.mongodb.org/linux/mongodb-linux-i686-1.4.4.tgz > mongo.tgz
$ tar xzf mongo.tgz
对于64位的linux
$ curl http://downloads.mongodb.org/linux/mongodb-linux-x86_64-1.4.4.tgz > mongo.tgz
$ tar xzf mongo.tgz
假设没有安装curl
先安装apt-get install curl
步骤二:创建数据目录
默认情况下,MongoDB会在/data/db/这个目录存放数据,这个目录须要自己手动创建。
通过例如以下方式创建:
$ adduser mongodb
$ passwd mongodb
$ sudo mkdir -p /data/db/
$ sudo chown `id -u` /data/db
$ chown -R mongodb:mongodb /data
当然 能够 通过--dbpath 命令 指定MongoDB将数据存储到另外的文件夹中去。
步骤三:让数据库执行起来
在控制台中:
$ nohup ./mongodb-xxxxxxx/bin/mongod &
$ ./mongodb-xxxxxxx/bin/mongo
> db.foo.save( { a : 1 } )
> db.foo.find()
结果是:
{ "_id" : ObjectId("4cd181a31415ffb41a094f43"), "a" : 1 }
以上的三个步骤就OK了!
!
这样一个简单的MongoDB数据库就能够畅通无阻得执行起来了。