MongoDB

Mongodb数据库的备份与恢复操作实例

写在前面 本文已经假设你已经安装好了Mongodb(2.6),并且已经开启了auth。 用户 首先我们添加备份和恢复数据所需的用户,这个用户需要有readWrite和userAdmin权限 复制代码 代码如下: $ mongo $ use admin $ db.auth("admin", "youradminpasswd"); $ use backupdb $ db.addUser({ user: "backup", pwd: "passwd", roles: [ "readWrite", " [详细]

深入分析Mongodb数据的导入导出

一、Mongodb导出工具mongoexportMongodb中的mongoexport工具可以把一个collection导出成JSON格式或CSV格式的文件。可以通过参数指定导出的数据项,也可以根据指定的条件导出数据。 mongoexport具体用法[root@localhost mongodb]# ./bin/mongoexport --help Export MongoDB data to CSV, TSV or JSON files. options: --help [详细]

MongoDB教程之聚合(count、distinct和group)

1. count: 复制代码 代码如下: --在空集合中,count返回的数量为0。 > db.test.count() 0 --测试插入一个文档后count的返回值。 > db.test.insert({"test":1}) > db.test.count() 1 > db.test.insert({"test":2}) > db.test.count() 2 --count和find一 [详细]

MongoDB 常用命令总结

简单的的增删改查数据 在查询结果中指定显示或者不显示某个字段 例如,我们希望在 lessons 集合中查找所有数据,但是不希望在返回结果中包含 slides 字段;因为 slides 是一个巨长的以 base64 表示的图片数组,影响查询结果的阅读。 那么我们就可以在 query object 后面跟上一个参数。如下: 复制代码 代码如下: db.lessons.find({}, {slides:0});同样也可以明确指定显示哪些字段: 复制代码 代码如下: db.bios.find( { } [详细]

浅谈MongoDB的备份方式

简要说一下MongoDB的备份方式: 1. mogodump / mongorestore 这2命令将mongodb的数据dump为BSON格式,需要的时候可以恢复。 这种方式作为小的数据库还适用。但如果是sharding或者几百G数据以上的话 就几乎不可用了。因为BSON及其占用空间。 2. Slave Replication 这是最适合和可靠的,适合生产环境。MongoDb支持master+多个slave。因此可以很方便的起一个slave来进行备份。 但是需要注意的是如果数据量很大的话,如 [详细]

MongoDB系列教程(四):设置用户访问权限

我们知道mysql在安装的时候需要我们设置一个数据库默认的用户名和密码,mongodb也不例外,不过mongodb是默认的没有设置访问限制的,不需要输入用户名和密码都可以访问的,但是这样会十分的不安全,我们需要手动的为mongodb加上权限限制命令。 首先建立一个默认的账户 复制代码 代码如下: Use admin Db.addUser('sa','sa') 这样我们建立了一个用户名为sa,密码为sa的默认账户。 在此时我们还是可以不输入用户名和密 [详细]

MongoDB系列教程(五):mongo语法和mysql语法对比学习

我们总是在对比中看到自己的优点和缺点,对于mongodb来说也是一样,对比学习让我们尽快的掌握关于mongodb的基础知识。 mongodb与mysql命令对比 关系型数据库一般是由数据库(database)、表(table)、记录(record)三个层次概念组成。而非关系型数据库mongodb是由数据库(database)、集合(collection)、文档对象(document)三个层次组成。mongodb对于关系型数据库里的表,没有行和列的关系概念,这体现了模式的自由特点。 语法 [详细]

MongoDB系列教程(六):java操作mongodb实例

java操作mysql数据库的代码我们已经了如指掌了,增删改查,java对mongodb数据库也是类似的操作,先是数据库连接,再是进行操作。 首先我们进入进入admin数据库,然后建立自己的数据库testMongoDb,进入admin数据库后,就可以直接进入testMongoDb,因为用户可以进入系统的数据库,就是超级管理员,use testMongoDb后,为该数据库设置用户名和密码,db.addUser('root','root'),这样我们在程序中连该数据库,并实现增删改查,代码如下所示 [详细]

MongoDB系列教程(七):MongoDb数据结构详解

首先,向数据库插入一条bjson数据 首先是定义文档,然后使用admin用户名密码登录,进入test数据库,向test数据库中插入此文档(“表名称和表中的记录”)插入结果,查看mongoVUE如下图所示从上图可以看出系统自带的三个数据库,local,admin,test,在加入一条记录的时候,会自动生成_id的自动标识。 我们再添加图片,可以使用mongoVUE添加,如下图所示。Collections:在mongodb中叫做集合,是文档的集合。无模式,可以存储各种各样的文档。类似mysql中的 [详细]

MongoDB系列教程(八):GridFS存储详解

GridFS简介 mongoDB的文档以BSON格式存储,支持二进制的数据类型,当我们把二进制格式的数据直接保存到mongoDB的文档中。但是当文件太大时,例如图片和视频等文件,每个文档的长度是有限的,于是mongoDb会提供了一种处理大文件的规范--GridFS。 GridFS实现原理 在GridFS数据库中,默认使用fs.chunks 和fs.files来存储文件,其中fs.files集合存放文件的信息,fs.chunks存放文件的数据,一个fs.files集合中的一条记录内容如下,即一个 [详细]

MongoDB数据库的特色和优点介绍

2011年将被记住,因为这一年SQL将死;这一年,关系数据库从一线退下;这一年开发人员发现他们没必要为了持久化数据,而将每个对象转化为表格结构。 2011年是文档数据库的一年,尽管一直在稳步发展势头,通过过去八年多的发展,现在有各种稳定的文档数据库----从基于亚马逊和谷歌的云,到各种开放源码工具,尤其是MongoDB。 那么,MongoDB是什么?这里的五件事是每个开发人员应该知道的: 1) MongoDB是一个独立的服务器; 如MySQL或PostreSQL 一样,MongoDB提供侦听端 [详细]

MongoDB简介 MongoDB五大特色

MongoDB是一种强大,灵活,可扩展的数据存储方式.它扩展了关系型数据库的众多有用功能,如辅助索引,范围查询和排序.MongoDB的功能非常丰富,比如:内置的对MapReduce式聚合的支持,以及对地理空间索引的支持. 1.1丰富的数据模型 MongoDB是面向文档的数据库,不是关系型数据库.放弃关系模型的主要原因就是为了获得更加方便的扩展性,还有其他的好处. 基本思路就是将原来"行"(row)的观念转化为更加灵活的"文档"(document)模型.面向文档的方式可以将文档或者数组内嵌进来, [详细]

MongoDB系列教程(一):NoSQL起源

为什么出现NoSQL? 随着互联网的发展,当我们把一台服务器一台服务器变成两台服务器,当我们开始建立数据备份,当我们需要加一个缓冲层,来调整所有的查询,投入更多的硬件。 最后,需要将数据切分多个集群上,并重构大量的应用逻辑以适应这种切分。不久之后,你就会发现被自己数月前的设计数据结构限制住了。 随着web2.0的兴起,关系型数据库本身无法克服的缺陷越来越明显,主要表现为如下几点。 1、对数据高并发读写的需求 2、对海量数据的高效率存储和访问的需求。 3、对数据库的高可扩展性和高可用性的需求。 [详细]

MongoDB中的MapReduce简介

MongoDB MapReduce MapReduce是一种计算模型,简单的说就是将大批量的工作(数据)分解(MAP)执行,然后再将结果合并成最终结果(REDUCE)。这样做的好处是可以在任务被分解后,可以通过大量机器进行并行计算,减少整个操作的时间。 上面是MapReduce的理论部分,下面说实际的应用,下面以MongoDB MapReduce为例说明。 下面是MongoDB官方的一个例子: 复制代码 代码如下: > db.things.insert( { _id : 1, tags : [ [详细]

MongoDB系列教程(二):MongoDB简介

MongoDB介绍 MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常的松散,是类似json的bjson格式,因此可以存储比较复杂的数据类型。MongoDB最大的特点是他支持的查询语言是非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。它的特点是高性能、易部署、易使用,存储数据非常方便。MongoDB功能特性 1、面 [详细]