MongoDB使用手册.docx

上传人:b****4 文档编号:12012775 上传时间:2023-04-16 格式:DOCX 页数:9 大小:62.88KB
下载 相关 举报
MongoDB使用手册.docx_第1页
第1页 / 共9页
MongoDB使用手册.docx_第2页
第2页 / 共9页
MongoDB使用手册.docx_第3页
第3页 / 共9页
MongoDB使用手册.docx_第4页
第4页 / 共9页
MongoDB使用手册.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

MongoDB使用手册.docx

《MongoDB使用手册.docx》由会员分享,可在线阅读,更多相关《MongoDB使用手册.docx(9页珍藏版)》请在冰豆网上搜索。

MongoDB使用手册.docx

MongoDB使用手册

 

MongoDB使用说明手册

 

版本记录

日期

版本

原因

撰稿人

审核人

2010-7-15

1.0

初始化

万韬

目录

第1章MongoDB简介4

1.1功能特点4

1.2适用范围4

第2章MongoDB下载及安装5

2.1下载地址5

2.2安装方法5

第3章MongoDB语法6

3.1基本命令6

3.1.1.启动mongodb6

3.1.2.停止mongodb6

3.2SQL语法7

3.2.1.基本操作7

3.2.2.数据集操作7

第4章JAVA操作MongoDB7

4.1正在整理中……7

第5章其它7

5.1正在整理中……7

第1章MongoDB简介

1.1功能特点

官方网址:

http:

//www.mongodb.org/

MongoDB是一个基于分布式文件存储的数据库开源项目。

由C++语言编写,旨在为WEB应用提供可护展的高性能数据存储解决方案。

它的特点是可扩展,高性能,易使用,模式自由,存储数据非常方便等,主要功能特性有:

◆面向文档存储:

(类JSON数据模式简单而强大)。

◆高效的传统存储方式:

支持二进制数据及大型对象(如照片和视频)。

◆复制及自动故障转移:

Mongo数据库支持服务器之间的数据复制,支持主-从模式及服务器之间的相互复制。

◆Auto-Sharding自动分片支持云级扩展性(处于早期alpha阶段):

自动分片功能支持水平的数据库集群,可动态添加额外的机器。

◆动态查询:

它支持丰富的查询表达式。

查询指令使用JSON形式的标记,可轻易查询文档中内嵌的对象及数组。

◆全索引支持:

包括文档内嵌对象及数组。

Mongo的查询优化器会分析查询表达式,并生成一个高效的查询计划。

◆支持RUBY,PYTHON,JAVA,C++,PHP等多种语言。

1.2适用范围

适用场景:

◆适合实时的插入,更新与查询,并具备应用程序实时数据存储所需的复制及高度伸缩性。

◆适合作为信息基础设施的持久化缓存层。

◆适合由数十或数百台服务器组成的数据库。

因为Mongo已经包含对MapReduce引擎的内置支持。

◆Mongo的BSON数据格式非常适合文档化格式的存储及查询。

不适用场景:

◆高度事务性的系统。

◆传统的商业智能应用。

◆级为复杂的SQL查询。

第2章MongoDB下载及安装

2.1下载地址

http:

//www.mongodb.org/downloads

选择一个稳定的版本v1.4.5,如下图:

2.2安装方法

通过mongod–install命令把mongodb注册成为windowservice。

1)创建数据库存储目录;例如:

d:

\data\db

2)通过命令行执行:

mongod--bind_ip127.0.0.1--logpathC:

\data\logs--logappend--dbpathd:

\data\db

--directoryperdb–install

【注:

将mongodb安装成服务,装该服务绑定到IP127.0.0.1,日志文件为d:

\data\logs,以及添加方式记录。

数据目录为d:

\data\db。

并且每个数据库将储存在一个单独的目录(--directoryperdb)】

安装成功后,如下图:

3)启动服务后,尝试是否可用,通过命令行进入%MONGODB_HOME%\bin下执行mongo.exe命令后出现如下图所示信息表示连接成功:

第3章MongoDB语法

3.1基本命令

3.1.1.启动mongodb

run直接启动:

例如:

mongodrun

--dbpath指定存储目录启动:

例如:

mongod–dbpath=d:

\db

--port指定端口启动:

(默认端口是:

27017)

例如:

mongod--port12345。

3.1.2.停止mongodb

在窗口模式中,可以直接使用Ctrl+C停止服务。

3.2SQL语法

3.2.1.基本操作

db.AddUser(username,password)添加用户

db.auth(usrename,password)设置数据库连接验证

db.cloneDataBase(fromhost)从目标服务器克隆一个数据库

mandHelp(name)returnsthehelpforthecommand

db.copyDatabase(fromdb,todb,fromhost)复制数据库fromdb---源数据库名称,todb---目标数据库名称,fromhost---源数据库服务器地址

db.createCollection(name,{size:

3333,capped:

333,max:

88888})创建一个数据集,相当于一个表

db.currentOp()取消当前库的当前操作

db.dropDataBase()删除当前数据库

db.eval(func,args)runcodeserver-side

db.getCollection(cname)取得一个数据集合,同用法:

db['cname']or

db.getCollenctionNames()取得所有数据集合的名称列表

db.getLastError()返回最后一个错误的提示消息

db.getLastErrorObj()返回最后一个错误的对象

db.getMongo()取得当前服务器的连接对象gettheserver

db.getMondo().setSlaveOk()allowthisconnectiontoreadfromthennonmastermembrofareplicapair

db.getName()返回当操作数据库的名称

db.getPrevError()返回上一个错误对象

db.getProfilingLevel()

db.getReplicationInfo()获得重复的数据

db.getSisterDB(name)getthedbatthesameserverasthisonew

db.killOp()停止(杀死)在当前库的当前操作

db.printCollectionStats()返回当前库的数据集状态

db.printReplicationInfo()

db.printSlaveReplicationInfo()

db.printShardingStatus()返回当前数据库是否为共享数据库

db.removeUser(username)删除用户

db.repairDatabase()修复当前数据库

db.resetError()

db.runCommand(cmdObj)runadatabasecommand.ifcmdObjisastring,turnsitinto{cmdObj:

1}

db.setProfilingLevel(level)0=off,1=slow,2=all

db.shutdownServer()关闭当前服务程序

db.version()返回当前程序的版本信息

3.2.2.数据集(表)操作

db.test.find({id:

10})返回test数据集ID=10的数据集

db.test.find({id:

10}).count()返回test数据集ID=10的数据总数

db.test.find({id:

10}).limit

(2)返回test数据集ID=10的数据集从第二条开始的数据集

db.test.find({id:

10}).skip(8)返回test数据集ID=10的数据集从0到第八条的数据集

db.test.find({id:

10}).limit

(2).skip(8)返回test数据集ID=1=的数据集从第二条到第八条的数据

db.test.find({id:

10}).sort()返回test数据集ID=10的排序数据集

db.test.findOne([query])返回符合条件的一条数据

db.test.getDB()返回此数据集所属的数据库名称

db.test.getIndexes()返回些数据集的索引信息

db.test.group({key:

...,initial:

...,reduce:

...[,cond:

...]})

db.test.mapReduce(mayFunction,reduceFunction,

db.test.remove(query)在数据集中删除一条数据

db.test.renameCollection(newName)重命名些数据集名称

db.test.save(obj)往数据集中插入一条数据

db.test.stats()返回此数据集的状态

db.test.storageSize()返回此数据集的存储大小

db.test.totalIndexSize()返回此数据集的索引文件大小

db.test.totalSize()返回些数据集的总大小

db.test.update(query,object[,upsert_bool])在此数据集中更新一条数据

db.test.validate()验证此数据集

db.test.getShardVersion()返回数据集共享版本号

MongoDB语法与现有关系型数据库SQL语法比较

MongoDB语法MySql语法

db.test.find({'name':

'foobar'})<==>select*fromtestwherename='foobar'

db.test.find()<==>select*fromtest

db.test.find({'ID':

10}).count()<==>selectcount(*)fromtestwhereID=10

db.test.find().skip(10).limit(20)<==>select*fromtestlimit10,20

db.test.find({'ID':

{$in:

[25,35,45]}})<==>select*fromtestwhereIDin(25,35,45)

db.test.find().sort({'ID':

-1})<==>select*fromtestorderbyIDdesc

db.test.distinct('name',{'ID':

{$lt:

20}})<==>selectdistinct(name)fromtestwhereID<20

db.test.group({key:

{'name':

true},cond:

{'name':

'foo'},reduce:

function(obj,prev){prev.msum+=obj.marks;},initial:

{msum:

0}})<==>selectname,sum(marks)fromtestgroupbyname

db.test.find('this.ID<20',{name:

1})<==>selectnamefromtestwhereID<20

db.test.insert({'name':

'foobar','age':

25})<==>insertintotest('name','age')values('foobar',25)

db.test.remove({})<==>delete*fromtest

db.test.remove({'age':

20})<==>deletetestwhereage=20

db.test.remove({'age':

{$lt:

20}})<==>eletetestwhereage<20

db.test.remove({'age':

{$lte:

20}})<==>deletetestwhereage<=20

db.test.remove({'age':

{$gt:

20}})<==>deletetestwhereage>20

db.test.remove({'age':

{$gte:

20}})<==>deletetestwhereage>=20

db.test.remove({'age':

{$ne:

20}})<==>deletetestwhereage!

=20

db.test.update({'name':

'foobar'},{$set:

{'age':

36}})<==>updatetestsetage=36wherename='foobar'

db.test.update({'name':

'foobar'},{$inc:

{'age':

3}})<==>updatetestsetage=age+3wherename='foobar'

第4章Python操作MongoDB

4.1正在整理中……

第5章其它

5.1正在整理中……

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 中国风

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1