Mongodb的安装与CRUD操作

What is Mongodb ?        

Mongo DB是一款开源的非关系型数据库(NoSql)其文档模型自由灵活,可以让你在开发过程中畅顺无比。对于大数据量、高并发、弱事务的互联网应用,MongoDB可以应对自如。MongoDB内置的水平扩展机制提供了从百万到十亿级别的数据量处理能力,完全可以满足Web2.0和移动互联网的数据存储需求,其开箱即用的特性也大大降低了中小型网站的运维成本。

安装Mongodb

来到mongodb官网http://www.mongodb.org/可以在这里找到YUM源,安装对应版本的两个包,一个为服务端,一个为客户端安装包名称如下:

mongo-10gen-2.4.12-mongodb_1.x86_64.rpm

mongo-10gen-server-2.4.12-mongodb_1.x86_64.rpm

添加官方yum源:

vim /etc/yum.repos.d/monogdb.repo

[mongodb]

name=MongoDB Repository

baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/

gpgcheck=0

enabled=1

 yum install mongo-10gen.x86_64 mongo-10gen-server.x86_64 -y

创建mongodb数据文件夹

mkdir /mongodb/data/

chown -R mongod.mongod /mongodb/data/

修改配置文件/etc/mongod.conf指定数据目录

dbpath=/mongodb/data

启动Mongodb

service mongod start

Mongodb的CRUD操作

[[email protected] ~]# mongo

MongoDB shell version: 2.4.5

connecting to: test

> show dbs  //显示数据库

local 0.078125GB

testdb 0.203125GB

> use testdb   //使用数据库,不需要提前创建可以直接使用。

switched to db testdb

> db.testmcoll.insert({Name: "Jerry"})   //指定集合插入数据

> db.testmcoll.insert({Name:"Haiman"})

> show collections    //显示库中的集合

system.indexes

testmcoll

> db.testmcoll.find()   //查找集合中的数据

{ "_id" : ObjectId("549fcaa56e8223a06e8b1f52"), "Name" : "Jerry" }

{ "_id" : ObjectId("549fcadc6e8223a06e8b1f53"), "Name" : "Haiman" }

> db.testmcoll.stats()   //输出集合的状态信息

{

"ns" : "testdb.testmcoll",

"count" : 2,

"size" : 80,

"avgObjSize" : 40,

"storageSize" : 4096,

"numExtents" : 1,

"nindexes" : 1,

"lastExtentSize" : 4096,

"paddingFactor" : 1,

"systemFlags" : 1,

"userFlags" : 0,

"totalIndexSize" : 8176,

"indexSizes" : {

"_id_" : 8176

},

"ok" : 1

}

>

> db.testmcoll.drop()   //删除集合

true

多值插入和批量插入

db.users.insert( {   name:"Tom",   age:23,   status:"S",  groups:[ "News","concert" ] } )

for(i=1;i<=100;i++) db.users.insert({Name:"User"+i,Age:i,Gender:"M",Class:["Network","software"]})

删除年龄为18的行

db.users.remove({Age:18})

将user12的年龄改为22

db.users.update({Name:"User10"},{$set:{Age:22}})   //先指定查询条件,然后用逗号分割开要设置的值。

将年龄大于60的用户class字段的值都改为"old-club"

db.users.update({Age:{$gt:60}},{$set:{Class:"old-club"}},{multi:true})  //mongodb默认只修改第一个匹配条件的document,multi:true代表修改整个文档被匹配到的内容

统计指定集合中文档的个数

db.users.count()

db.collection.find() 比较运算符:

$gt    大于

$gte   大于等于

$in    存在于指定列表中

$lt    小于

$lte   小于等于

$ne    不等于

$nin   不存在指定列表中

查找出Age大于等于90的用户,只显示Name,Age字段:

db.users.find({Age:{$gte:90}},{Name:1,Age:1})

逻辑运算

$or:或运算  $and:与运算  $not:非运算  $nor:反运算,表示返回不符合所有指定条件的文档。

查找Age大于61并且小于70的用户

db.users.find({$and:[{Age:{$gt:61}},{Age:{$lt:70}}]})

查找Age大于61并且小于70的用户只,显示Name字段

db.users.find({$and:[{Age:{$gt:61}},{Age:{$lt:70}}]},{Name:1})

元素查询

$exists:根据指定字段的存在性挑选文档,语法格式{field:{$exists:<boolean>}},指定<boolean>的值为"true"则返回存在指定字段的文档,"false"则返回不存在指定字段的文档;

$mod:将指定字段的值进行取模运算,并返回其余数为指定值得文档

$type:返回指定字段的值类型为指定类型的文档

查找存在Address字段的文档

db.users.find({Address:{$exists:true}})

总结完成!

时间: 2024-11-03 03:36:38

Mongodb的安装与CRUD操作的相关文章

mongodb的安装及命令操作

mongodb的下载地址:https://www.mongodb.com/download-center#community: mongodb下载后进行安装,选择custom安装,装到一个根目录下,如c,d,e,f盘等: mongodb安装完之后,会有一个bin的文件夹在刚刚定义的根目录下: mongodb连接命令:1.cd bin,2.mongod.exe --dbpath e:\data\db\ (此处有解释)安装完mongodb要自定义安装是因为大家很可能找不到装到哪儿去了:安装完之后生成

MongoDB的安装及常用操作

MongoDB MongoDB简介 MongoDB是一款跨平台面向文档的数据库.可以实现高性能.高可用性,并且能够轻松扩展.是一个基于分布式文件存储的开源数据系统,在高负载的情况下,添加更多的节点,可以保证服务器性能. MongoDB也是也是一个介于关系数据库和非关系型数据库之间的产品,是非关系型数据库中功能最丰富.最像关系型数据库的.MongoDB不在有"行"的概念,其运行方式主要两个概念:集合(collection)与文档(document). MongoDB的特点 MongoDB

MongoDB的一些简单CRUD操作

上篇博客已经对MongoDB进行了简单介绍和它如何安装,现在来说说MongoDB的操作.MongoDB的操作用的是Shell命令,Shell命令语法和JavaScript很类似,其实控制台底层的查询语句都是用JavaScript脚本完成操作的.使用Shell 命令,需要启动mongo.exe. 常用Shell命令如下: 1.创建collection 2.查看创建的collection 3.collection中写入数据 4.查询插入的数据 5.条件查询 6.查询一条数据中的指定列 7.排序 7.

MongoDB的CRUD操作

1. 前言 在上一篇文章中,我们介绍了MongoDB.现在,我们来看下如何在MongoDB中进行常规的CRUD操作.毕竟,作为一个存储系统,它的基本功能就是对数据进行增删改查操作. MongoDB中的增删改查操作,不同于我们熟悉的关系数据库中的操作.在关系数据库中,比如MySQL,我们通常使用SQL语句对数据库进行增(INSERT)删(DELETE)改(UPDATE)查(SELECT).MongoDB在对数据进行操作过程中,使用的是Document进行数据操作.在对数据库进行操作的时候,使用Do

MongoDB对图片进行CRUD操作——与JAVA结合

上几篇博客简单对MongoDB进行了简单介绍和如何安装,以及在dos下是如何操作MongoDB和在安装MongoDB中,出现了什么错误,是如何解决的.当然这些都还不够,我们还要用到实际当中去.我用MyEclipse+JDK1.7做了一个简单的demo,来展示下MongoDB怎么运用到实际中去. MongoDB作为一个NoSql数据库的代表,存取多媒体数据,应该是强项吧?那么,在MongoDB中是如何对图片进行CRUD操作的. 上几篇博客中已经提到,MongoDB的文档结构是BSON格式,BSON

Linux下MongoDB的安装和操作

Mongo DB ,是目前在IT行业非常流行的一种非关系型数据库(NoSql),其灵活的数据存储方式,备受当前IT从业人员的青睐.Mongo DB很好的实现了面向对象的思想(OO思想),在Mongo DB中 每一条记录都是一个Document对象.Mongo DB最大的优势在于所有的数据持久操作都无需开发人员手动编写SQL语句,直接调用方法就可以轻松的实现CRUD操作. 一.下载mongodb 前往mongodb官网下载页面:https://www.mongodb.org/downloads下载

【翻译】MongoDB指南/CRUD操作(三)

[原文地址]https://docs.mongodb.com/manual/ CRUD操作(三) 主要内容: 原子性和事务(Atomicity and Transactions),读隔离.一致性和新近性,分布式查询(Distributed Queries),分布式写操作,模拟两阶段任务提交,在副本集中执行配额读取 1 原子性和事务(Atomicity and Transactions) 在MongoDB中,写操作在单文档级别具有原子性,即使修改一个文档中的多个嵌入式文档也是如此. 当一个写操作修

Ruby操作MongoDB(进阶)-CRUD操作

MongDB数据库的使用离不开CRUD操作.什么是CRUD,就是创建文档,读取文档信息,更新文档和删除文档. key-value键值对标记 在MongoDB的Ruby驱动中,Key_value键值多次出现.而且有时会出现语法上的巧合,这取决于在使用的Ruby版本中如何申明. 在文档创建步骤中,1.9及之后版本支持以下语法: document={name:"Tom",age:20}. 但是如果你使用的是2.2或者更高的版本,你可以用双引号将你的key包起来.如: document={&q

【翻译】MongoDB指南/CRUD操作(二)

[原文地址]https://docs.mongodb.com/manual/ MongoDB CRUD操作(二) 主要内容: 更新文档,删除文档,批量写操作,SQL与MongoDB映射图,读隔离(读关注),写确认(写关注) 1 更新文档 1.1 更新 MongoDB提供下列方法用于更新一个集合 db.collection.updateOne() 更新使用指定过滤器匹配到的文档,即使过滤器匹配到多个文档,也只会更新一个文档. 3.2版本新增特性. db.collection.updateMany(