mongodb 3.0下载安装、配置及mongodb最新特性、基本命令教程详细介绍

mongoDB简介(本文由www.169it.com搜集整理)

MongoDB是一个高性能,开源,无模式的文档型数据库,是目前在IT行业非常流行的一种非关系型数据库(NoSql)。它在许多场景下可用于替代传统的关系型数据库或键/值存储方式。Mongo使用C++开发。Mongo的官方网站地址是:http://www.mongodb.org/.MongoDB灵活的数据存储方式备受当前IT从业人员的青睐。MongoDB很好的实现了面向对象的思想(OO思想),在Mongo DB中 每一条记录都是一个Document对象。Mongo DB最大的优势在于所有的数据持久操作都无需开发人员手动编写SQL语句,直接调用方法就可以轻松的实现CRUD操作。

2015年3月3日,MongoDB 3.0 正式版本发布!这标志着 MongoDB 数据库进入了一个全新的发展阶段,提供强大、灵活而且易于管理的数据库管理系统。MongoDB宣称,3.0新版本不只提升7到10倍的写入效率以及增加80%的数据压缩率,还能减少95%的运维成本。

mongoDB 3.0下载

mongoDB 3.0下载地址:  mongoDB 3.0下载 

官方提供的mongoDB 3.0可下载的各个版本如下图所示:

mongodb 3.0下载安装、配置及mongodb最新特性、基本命令教程详细介绍

mongodb 3.0如何安装呢?具体安装步骤如下:

mongodb 3.0在Linux上的安装步骤(主要是指在redhat/centos上的安装过程)

1. 在redhat/centos配置mongodb 3.0的yum源.

在redhat/centos上建立一个yum源文件 /etc/yum.repos.d/mongodb-org-3.0.repo 并将以下信息添加到文件中,

1
2
3
4
5
[mongodb-org-3.0]
name=MongoDB Repository
baseurl=http://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.0/x86_64/
gpgcheck=0
enabled=1

2 安装 mongoDB 3.0 和相关工具,执行如下安装命令:

1
sudo yum install -y mongodb-org  //安装最新版mongodb

1
sudo yum install -y mongodb-org-3.0.0 mongodb-org-server-3.0.0 mongodb-org-shell-3.0.0 mongodb-org-mongos-3.0.0 mongodb-org-tools-3.0.0 //安装mongodb 3.0

mongodb 3.0 在Windows上的安装配置步骤:

1. 根据windows版本选择下载相应的mongodb 3.0版本的msi文件。

2. 点击下载mongodb 3.0版本的msi文件。

3. 双击下载的windows安装文件mongodb-win32-x86_64-2008plus-ssl-3.0.0-signed.msi,直接安装。

4. 安装完成后,mongodb 3.0的默认安装目录为C:\mongodb。

MongoDB 3.0主要新特性包括:

 1)可插入式的存储引擎 API

 2)支持 WiredTiger 存储引擎

 3)MMAPv1 提升

 4)复制集全面提升

 5)集群方面的改进

 6)提升了安全性

 7)工具的提升

mongodb 3.0下载安装、配置及mongodb最新特性、基本命令教程详细介绍

MongoDB 3.0 在性能和扩展性方面都有非常巨大的提升,通过在存储层的大幅改进实现。新版不仅强化原本的MMAPv1储存引擎,还内置WiredTiger存储引擎以及能减少运维人员日常例行性工作的管理平台(Ops Manager)。

   WiredTiger 存储引擎是一项难以置信的技术实现,提供无门闩、非堵塞算法来利用先进的硬件平台(如大容量芯片缓存和线程化架构)来提升性能。通过 WiredTiger,MongoDB 3.0 实现了文档级别的并发控制,因此大幅提升了大并发下的写负载。

   因为WiredTiger,MongoDB 3.0才能有文档级别的并行控制(Concurrency Control),即使处理频繁写入任务,数据库依然能维持效能一定的稳定度和可预测性。另外,用户可以自己选择储存数据的压缩比例,MongoDB 3.0提供最高达80%的压缩率,不过压缩率越高数据处理的时间成本也越多,用户可以自行权衡应用。

MongoDB常用命令教程

mongodb超级用户相关命令:

use admin

#增加或修改用户密码

db.addUser(169it,'pwd')

#查看用户列表

db.system.users.find()

#用户认证

db.auth(169it,'pwd')

#删除用户

db.removeUser('mongodb')

#查看所有用户

show users

#查看所有数据库

show dbs

#查看所有的collection

show collections

#查看各collection的状态

db.printCollectionStats()

#查看主从复制状态

db.printReplicationInfo()

#修复数据库

db.repairDatabase()

#设置记录profiling,0=off 1=slow 2=all

db.setProfilingLevel(1)

#查看profiling

show profile

#拷贝数据库

db.copyDatabase('mail_addr','mail_addr_tmp')

#删除collection

db.mail_addr.drop()

#删除当前的数据库

db.dropDatabase()

mongodb客户端连接命令:

/usr/local/mongodb/bin/mongo 8.8.88/ixigualib -u ixigua -p 'pwd'

mongodb增删改命令:

#存储嵌套的对象

db.foo.save({'name':'ysz','address':{'city':'beijing','post':100096},'phone':[138,139]})

#存储数组对象

db.user_addr.save({'Uid':'169it@sohu.com','Al':['test-1@sohu.com','test-2@sohu.com']})

#根据query条件修改,如果不存在则插入,允许修改多条记录

db.foo.update({'yy':5},{'$set':{'xx':2}},upsert=true,multi=true)

#删除yy=5的记录

db.foo.remove({'yy':5})

#删除所有的记录

db.foo.remove()

mongodb索引命令:

#增加索引:1(ascending),-1(descending)

db.things.ensureIndex({firstname: 1, lastname: 1}, {unique: true});

#索引子对象

db.user_addr.ensureIndex({'Al.Em': 1})

#查看索引信息

db.deliver_status.getIndexes()

db.deliver_status.getIndexKeys()

#根据索引名删除索引

db.user_addr.dropIndex('Al.Em_1')

mongodb查询命令:

#查找所有

db.foo.find()

#查找一条记录

db.foo.findOne()

#根据条件检索10条记录

db.foo.find({'msg':'Hello 1'}).limit(10)

#sort排序

db.deliver_status.find({'From':'169it@sina.com'}).sort({'Dt',-1})

db.deliver_status.find().sort({'Ct':-1}).limit(1)

#count操作

db.user_addr.count()

#distinct操作

db.foo.distinct('msg')

#>操作

db.foo.find({"timestamp": {"$gte" : 2}})

#子对象的查找

db.foo.find({'address.city':'beijing'})

mongodb管理命令:

#查看collection数据的大小

db.deliver_status.dataSize()

#查看colleciont状态

db.deliver_status.stats()

#查询所有索引的大小

db.deliver_status.totalIndexSize()

#查看当前所使用的数据库

db

上一篇:Java性能调优(一):调优的流程和程序性能分析


下一篇:Android优化之ArrayMap