环境: Ubuntu 13.04

安装MongoDB

$sudo apt-get install mongodb

会自动安装libpcrecpp0 libboost-system1.42.0 libboost-filesystem1.42.0

libboost-program-options1.42.0 libboost-thread1.42.0 xulrunner-2.0-mozjs

mongodb-clients mongodb-server mongodb-dev mongodb 等依赖包。

$ps aux | grep mongod

安装Python语言驱动

$sudo apt-get install python-setuptools

$sudo easy_install pymongo

配置MongoDB

$sudo vim /etc/mongodb.conf

dbpath=’your datebase path’

logpath=’where to log’

logappend=true

bind_id=127.0.0.1

port=27017

使用Mongo测试数据库

Mongo是客户端,Mongod是服务端。下面使用Mongo测试下服务。

root@ubuntu:~# mongo

MongoDB shell version: 1.6.3

Mon Jun 27 19:15:05 *** warning: spider monkey build without utf8 support. consider rebuilding with utf8 support

connecting to: test

>

> db.serverStatus()

输出参数为json格式有几个主要的类型:

 uptime: 服务器运行时间(秒)

 localTime: 服务器本地时间

 mem: 服务器内存信息

 connections: 当前连接数

 opcounters: 操作统计

查看所有数据库:

> show dbs

admin

local

可以看出最初的时候只有 admin local test三个数据库,test在使用,这里没有显示出来。

切换数据库

>use admin

switched to db admin

>db.stats()

使用WEB测试数据库

访问27017

根据要求再访问 27017 + 1000 = 28017

可以看到一个很完整的管理页面,显然不如CouchDB的漂亮,呵呵。

完整测试

创建数据库

MongoDB没有创建数据库的命令,可以使用use dbname进行切换,use可以切换到不存在的数据库,当有数据写入的时候就会创建数据库。

root@ubuntu:~# mongo

>use mytestdb

创建Collection

进入数据库建立coolection数据库才算建立完成。使用

db.createCollection("mytestdb ", {capped:true, size:10000}) 单位是kb

或者db.runCommand( {createCollection:" mytestdb ", capped:true, size:100000} )

capped参数是建立固定大小的数据库文件,为了保证效率,mongo会在建立collection的时候占用磁盘空间,防止碎片。

> db.createCollection("mytestdb ", {capped:true, size:10000})

> show collections

mytestdb

建立文档

>db. mytestdb.insert({name:'xiaowanzi',age:8})

示例查询

操作符

SQL

Mongo

*

Select * from mytestdb

db.mytestdb.find()

Column

Select name,age from mytestdb

db.mytestdb.find({},{name:1,age:1})

Where *

Select * from mytestdb where age=24

db.mytestdb.find({age:24})

Column where

Select name,age from mytestdb where age=24

db.mytestdb.find({age:24},{name:1,age:1})

>> <<

Select * from mytestdb where age>20

db.mytestdb.find({‘age’:{>:20}})

Like

Select * from mytestdb where name like ‘wang%’

db.mytestdb.find({name:/^wangfan/})

 

Select * from mytestdb where name like ‘%wang%’

db.mytestdb.find({name:/wangfan/})

Order

SELECT * FROM mytestdb ORDER BY name DESC

db.mytestdb.find().sort({name:-1})

> db.mytestdb.find()

{ "_id" : ObjectId("4e093ff90edf95f31cbc7c29"), "name" : "xiaowanzi", "age" : 8 }

创建索引

使用ensureIndex来创建索引

db. mytestdb.ensureIndex({name:1})

db.runCommand({dropIndexes:'foo', index : '*'})

这里的1是正序,-1是倒序

删除索引

db.collection.dropIndexes();删除所有的索引

db. mytestdb.dropIndexes({name:1});

db.runCommand({dropIndexes:'wfcoll', index : {name:1}})

我们在name字段做一个索引,在age上做个负索引,如下:

>db.mytestdb.ensureIndex({name:1})

>db.mytestdb.ensureIndex({age:-1})

安装和使用mongodb的更多相关文章

  1. CentOS6.3安装MongoDB2.2 及 安装PHP的MongoDB客户端

    下载源码:(放到 /usr/local/src 目录下) 到官网 http://www.mongodb.org/downloads 下载源码 https://fastdl.mongodb.org/li ...

  2. 在亚马逊amazon的AWS上安装Node和MongoDB服务器

    在亚马逊amazon的AWS上安装Node和MongoDB服务器 在建立AWS上账号.创建EC2 ,用putty链接上之后,就可以用下面的方法开始安装. !!! 如果不是是自己建立的EC2, 而是由B ...

  3. windows下安装和配置mongoDB

    上次在mac下安装和配置了mongodb,这次在windows下也尝试安装和配置mongodb. 1.首先下载mongodb压缩包,下载后解压到D盘或E盘.如下: 2.配置环境变量:桌面—计算机右键— ...

  4. Mac下安装和配置mongoDB

    mac下的mongodb下载安装比较简单,主要有两种方式,一种是下载压缩包解压,另一种是通过npm或者homebrew命令安装,这里就不赘述了, 复杂的在于mongodb运行环境的配置(若未配置运行环 ...

  5. mac 安装和使用MongoDB

    安装 尝试一:手动命令安装尝试二:采用Homebrew尝试三:下载安装包使用安装尝试一:手动命令安装按照官网https://docs.mongodb.com/manual/tutorial/insta ...

  6. Linux环境下安装NodeJS和mongoDB

    前面的话 本文将详细介绍如何下Linux环境下安装NodeJS和mongoDB NodeJS [1]使用二进制包安装 1.在官网下载Linux环境下的NodeJS安装包 2.通过xftp软件将安装包上 ...

  7. Windows下安装并启动mongodb

    一.Windows下mongodb的安装 MongoDB 提供了可用于 32 位和 64 位系统的预编译二进制包,你可以从MongoDB官网下载安装,MongoDB 预编译二进制包下载地址:https ...

  8. mongodb 怎样检测 安装成功 以及mongodb的一些增删改查命令

    mongodb 主页 http://www.mongodb.org/ 1.先在网上下载一个mongodb的安装包,再打开cmd命令,找到你装mongodb的文件的路径,进到mongodb的文件下的li ...

  9. 在CentOS 7上使用Yum源安装和卸载 MongoDB 3.4

    在CentOS 7上使用Yum源安装和卸载 MongoDB 3.4 1.配置Yum源 vim /etc/yum.repos.d/mongodb-org-3.4.repo [mongodb-org-3. ...

  10. nodeJS学习(7)--- WS开发 NodeJS 项目-节2 <安装&设置&启动 mongodb 数据库++遇到的问题>

    本文系统 win7 参考:http://lib.csdn.net/article/mongodb/58097  http://www.cnblogs.com/lzrabbit/p/3682510.ht ...

随机推荐

  1. HTTP的瓶颈

    http协议,1.0或1.1版本,一个连接智能发送一个请求,通信都是基于请求/响应方式的,请求只能从客户端发起(半双工),发送冗长的首部. 在交互比较频繁的社交网站等,一直轮训带来的网络及服务器压力是 ...

  2. STS中配置MyBatis代码生成器

    1.STS工具菜单项Help > Eclipse Marketplace... 2.输入“mybatis”关键字搜索 3.选择MyBatis Generator 1.3.7进行安装 4.安装成功 ...

  3. Mono For Android 之 配置环境

    下载 Xamarin Mono For Android 4.6.07004 完整离线破解版 (包括除 Android SDK 外的所有文件) Android SDK. 资源源自 http://www. ...

  4. AbpZero兼容sql2008

    笔者遇到的问题是公司服务器用的MSSQL的版本是2008,但AbpZero一些封装好的ORM语法只兼容到2012版本: 例如我遇到的问题就是AbpZero的分页就报这个错 然后我们要修改的是Entit ...

  5. 浏览器报ScriptResource.axd异常

    新拷贝的一份管理后台代码,部署在另一台服务器上时,查看浏览器调控制台,发现有几个红色报错.这些错误导致网站的部分功能无法使用. 主要错误有: 1.“Sys”未定义 2.asp.net ajax 客户端 ...

  6. 关于STM32位带操作随笔

    以前在学习STM32时候关注过STM32的位带操作,那时候只是知道位带是啥,用来干嘛用,说句心里话,并没有深入去学习,知其然而不知其所以然.但一直在心中存在疑惑,故今日便仔细看了一下,写下心得供日后参 ...

  7. WPF之坑——ICommandSource与RoutedUICommand

    最近在项目中自己写了一个控件A,继承自contentcontrol,实现了icommandsource接口.(因需求特殊并没有使用buttonbase及它的派生类为基类),控件A在测试程序中运转良好, ...

  8. c# async Task await Result 死锁

    最近项目数据量较大,使用 async Task异步增加执行效率 遇到问题,当前有2个计算非常耗时,现在需要你优化一下,这2个计算并行执行,2个计算执行完成后将2个结果sum返回给用户 当前我是这样实现 ...

  9. 在MUI框架中使用video.js插件,并在暂停的时候利用Asp.net将观看时长保存到sqlserver数据库

    本次保存数据的情况有三种: 在视频播放的时候点击暂停,将本视频的进度保存到数据库 利用mui内部的控件,返回上一页操作时,进行保存 安卓手机触发返回键的时候,进行保存 示例一: 在video标签上面添 ...

  10. C# OleDbConnection对特定部分Excel的数据读取

    最近在写winform程序,先来一个简单的. 读取特定部分Excel的数据读取,读取Excel第30行开始到H列的数据 using System;using System.Collections.Ge ...