MongoDb 概述

 

MondoDb是什么

MongoDB是一个面向文档的数据库系统。使用C++编写,不支持SQL,但有自己功能强大的查询语法。MongoDB使用BSON作为数据存储和传输的格式。BSON是一种类似JSON的二进制序列化文档,支持嵌套对象和数组。MongoDB很像MySQL,document对应MySQL的row,collection对应MySQL的table。是当前NoSql数据库中比较热门的一种。它在许多场景下可用于替代传统的关系型数据库或键/值存储方式。

NoSQL与关系型数据库设计理念比较

关系型数据库中的表都是存储一些格式化的数据结构,每个元组字段的组成都一样,即使不是每个元组都需要所有的字段,但数据库会为每个元组分配所有的字段,这样的结构可以便于表与表之间进行连接等操作,但从另一个角度来说它也是关系型数据库性能瓶颈的一个因素。而非关系型数据库以键值对存储,它的结构不固定,每一个元组可以有不一样的字段,每个元组可以根据需要增加一些自己的键值对,这样就不会局限于固定的结构,可以减少一些时间和空间的开销。

特点   高性能、易部署、易使用,存储数据非常方便。

  1. 面向集合存储,易存储对象类型的数据。
  2. 模式自由。
  3. 支持动态查询。
  4. 支持完全索引,包含内部对象。
  5. 支持复制和故障恢复。
  6. 使用高效的二进制数据存储,包括大型对象(如视频等)。
  7. 自动处理碎片,以支持云计算层次的扩展性
  8. 支持Python,PHP,Ruby,Java,C,C#,Javascript,Perl及C++语言的驱动程序。
  9. 文件存储格式为BSON(一种JSON的扩展)。
  10. 可通过网络访问。

功能

  1. 面向集合的存储:适合存储对象及JSON形式的数据。
  2. 动态查询:Mongo支持丰富的查询表达式。查询指令使用JSON形式的标记,可轻易查询文档中内嵌的对象及数组。
  3. 完整的索引支持:包括文档内嵌对象及数组。Mongo的查询优化器会分析查询表达式,并生成一个高效的查询计划。
  4. 查询监视:Mongo包含一个监视工具用于分析数据库操作的性能。
  5. 复制及自动故障转移:Mongo数据库支持服务器之间的数据复制,支持主-从模式及服务器之间的相互复制。复制的主要目标是提供冗余及自动故障转移。
  6. 高效的传统存储方式:支持二进制数据及大型对象(如照片或图片)
  7. 自动分片以支持云级别的伸缩性:自动分片功能支持水平的数据库集群,可动态添加额外的机器。

MongoDb 安装

 

操作系统  : Mac Os X
集成环境  : Mamp
编程语言  : PHP
Server    : Mongodb
Extension   : Mongo-1.2.4
管理工具  : Rock-PHP
Web根目录  : /web/mongodb

操作步骤:

#创建目录:sudo mkdir-p /usr/local/mongodb/datasudo mkdir/usr/local/mongodb/logsudo mkdir/usr/local/mongodb/source

#下载文件:cd /usr/local/mongodb/sourcecurl -O http://pecl.php.net/get/mongo-1.2.4.tgzcurl -O http://fastdl.mongodb.org/osx/mongodb-osx-x86_64-2.0.0.tgz

#解压文件:tar -zxvf mongo-1.2.4.tgz ; tar -zxvf mongodb-osx-x86_64-2.0.0.tgz

#创建PHP扩展:cd /usr/local/mongodb/mongo-1.2.4/phpize./configure --enable-mongomake ; make install

#复制 mongo.so 到PHP的扩展目录cp modules/mongo.so /Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626

#更改配置文件vi /Applications/MAMP/conf/php5.3/php.ini添加extension=mongo.so

#启动Mongodb服务cd mongodb-osx-x86_64-2.0.0sudo bin/mongod --dbpath=/usr/local/mongodb/data/--fork --logpath=/usr/local/mongodb/log/mongodb.log--logappend

#终端出现waiting for connections on port 27017#查看服务是否开启成功netstat -ntl | grep 27017

解压Mongodb管理工具Rock-PHP到/web/mongodb

访问当前路径:localhost(我本地指定的虚拟域名:qx.com)

这样就搭建好了!

祝所有人都可以顺利的搭建Mongodb.

有不明白的可以联系我!

转载于:https://www.cnblogs.com/wubaiqing/archive/2011/09/16/2178933.html

初识Mongodb总结相关推荐

  1. mongodb 搜索速度_初识 MongoDB 数据库

    初识 MongoDB 数据库 前言 Flask 基础框架在之前的三篇文章中写完了.想要学习 web 相关的同学可以自己回顾翻一下,相信看完了,你也可以写出来一个简单的小案例来炫耀一波! 说到 web ...

  2. 头歌 初识MongoDB

    初识MongoDB 第1关:启动 MongoDB 第2关:启动 MongoDB 多实例 第3关:退出客户端和关闭 MongoDB 服务 第1关:启动 MongoDB cd /data mkdir my ...

  3. MongoBD 系列(1) —— 初识 MongoDB

    初识 MongoDB 文章目录 初识 MongoDB 什么是MongoDB? MongoDB 的安装 1. 传统二进制安装 2. Docker 安装 MongoDB 的使用 1. MongoDB 结构 ...

  4. 初识MongoDB(四)

    1. 批量插入:以数组的方式一次插入多个文档可以在单次TCP请求中完成,避免了多次请求中的额外开销.就数据传输量而言,批量插入的数据中仅包含一份消息头,而多次单条插入则会在每次插入数据时封装消息头数据 ...

  5. Mongodb系列:初识Mongodb

    一.背景: 月初进行了期末考试很荣幸能够参加到了考试系统维护中(详情请阅读:<那些年我们一起参加的活动:15年上半年考试系统维护总结>)!主要负责服务器维护,在维护期间对Mongodb相逢 ...

  6. 手游公司运维之初识MongoDB

    接触MongoDB一年多了,之前从来没有想过自己会在工作中大量使用MongoDB.曾经一段时间,我还想过以后做一个合格的DBA,自己还学习了Oracle和MySQL数据库,但是所在的公司一直都有专门的 ...

  7. 初识MongoDB(一) mongodb基本操作

    使用背景: 项目中需要存储一些下游的需求,需求的的格式是个树形的格式,例如某个需求里面包含n个城市某个品牌某个车系,可以简化成下图.(只是作为使用场景来分析,可以跳过) 按照关系型数据库来说的话,有两 ...

  8. MongoDB的学习,初识MongoDB

    MongoDB MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案. MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非 ...

  9. Windows下MongoDB的安装与设置MongoDB服务

    Mongo DB 是目前在IT行业非常流行的一种非关系型数据库(NoSql),其灵活的数据存储方式备受当前IT从业人员的青睐.Mongo DB很好的实现了面向对象的思想(OO思想),在Mongo DB ...

最新文章

  1. C++中创建二维数组的几种方法
  2. 使用Python开发的POC多线程批量执行小框架
  3. python argvparser_Python命令行参数argv和argparse该如何使用
  4. 一个星期+4轮面试终拿下offer,进阶学习
  5. 一文弄懂SSD目标检测算法
  6. 第二次冲刺阶段(第七天)
  7. 什么是Angular的Target
  8. 10投屏后没有声音_手机投屏到电视没有声音?
  9. oracle 次月,Oracle日期查询:季度、月份、星期等时间信息
  10. arcgis python实例_ArcGIS Python编程案例(14)-五个常用Python处理任务
  11. mybatis,mysql,datasource,dpcb连接池的关系
  12. xcode 可以打开xmind_思维导图,原来Xmind这么强大
  13. 思科交换机配置dhcp
  14. 如何用 NAS 搭建属于自己的云端书库 | 极客分享第 32 期
  15. 如何使用adb卸载手机系统内部软件
  16. Adobe Camera Raw使用方法
  17. eclipse遇到“A java Exception has occurred”报错解决办法
  18. android /mnt/sdcard 只读,Android重要的文件目录mnt/sdcard 和 /sdcard
  19. MySQL Workbench中PK,NN,UQ,BIN,UN,ZF,AI,G字段类型标识说明
  20. Ecowalker充气足球门,为青少年足球训练保驾护航!

热门文章

  1. iOS中改变部分字体颜色
  2. hibernate 高级映射 --张国亮总结第一季
  3. 数组常见的遍历循环方法、数组的循环遍历的效率对比
  4. 如何仅用递归函数和栈操作逆序一个栈
  5. CNCF 宣布 Helm 成为基金会下一个重点孵化项目
  6. ArrayList初步
  7. SpringBoot 使用(三): 配置文件详解
  8. GODOT 3.0 开发进度汇报 #6
  9. cordova 强制竖屏
  10. cnetos7 vncserver安装与配置