MongoDB系列----查】的更多相关文章

开启查询: db.getMongo().setSlaveOk() 查版本: db.servion(); db.serverBuildInfo(); db.serverStatus().storageEngine; //查询存储引擎类型 db.collection_name.totalIndexSize(); 查询该集合索引大小 db.collection_name.stats(); 查询集合的统计信息 1.查user集合中所有记录 db.user.find(); 2.通过指定条件查 db.use…
前言 上一篇文章<MongoDB系列(一):简介及安装>已经介绍了MongoDB以及其在window环境下的安装,这篇文章主要讲讲如何用C#来与MongoDB进行通讯.再次强调一下,我使用的MongoDB版本是2.6,因为2.6是我最熟悉的版本,而且我使用的GUI工具Robomongo目前还不支持3.0版本. 添加官方驱动 官方驱动可以从Nuget上获取,但是这里我们不使用最新的驱动,而是使用1.9.2这个版本,个人认为该版本对MongoDB2.6的支持最好,而且目前的下载量也是最多.驱动地址…
目前我正在进行MongoDB的双机热备方面相关的工作.根据我目前看到的MongoDB方面的材料,MongoDB的实际部署有三种方式,分别是“主动复制”,“副本集”以及“分片副本集”. 首先我们从最简单的开始,也就是先来做“主从备份”. 首先明确我只是测试,测试觉得不错会部署在我们的项目的服务器上面.介绍一下我的testbed,三个虚拟机,安装的都是ubuntu12.10的x86_64的服务器版操作系统.分别叫“MongoDBMaster”“MongoDBSlave1”“MongoDBSlave2…
在配置副本集之前,我们先来了解一些关于副本集的知识. 1,副本集的原理 副本集的原理与主从很相似,唯一不同的是,在主节点出现故障的时候,主从配置的从服务器不会自动的变为主服务器,而是要通过手动修改配置.但是副表集就不用,它会自动选出一台服务器做为主节点,从而保障系统的稳定性. 2,副本集新的主节点是怎么选举出来的呢 是通过bully算法来的,也就是一致性协议.具体如下 1):当主节点挂了后,副本集会获得其他从节点的最后更新时间与主服务做对比 2):如果所有从节点的最后更新时间都是很旧,那就选举停…
MongoDB 系列文章 本文的内容是基于 MongoDB 4.0 的. 参考于 MongoDB 4.0 官方文档. 搭建 MongoDB从搭建到优化 MongoDB-副本集搭建与管理 管理 MongoDB 生产环境笔记 优化 MongoDB 日志切割 MongoDB 日志切割三种方式 CPU 占用较高 MongoDBCPU占用较高(阿里云) MongoDB 开启慢查询 MongoDB调优-查询优化-MongoDB Profiler MongoDB Oplog详解 MongoDB-Oplog详解…
1. 什么是副本集 副本集就是mongoDB副本所组成的一个集群. 同期原理是,写操作发生在主库,从库同步主库的OpLog日志. 集群中没有特定的主库,主库是选举产生,如果主库down了,会再选举出一台主库. mongoDB也可以配置成主从模式,但,官方已经不建议使用主从模式了,替代方案是采用副本集的模式. 副本集有以下特点: 1. 最小构成是:primary,secondary,arbiter,一般部署是:primary,2 secondary. 2. 成员数应该为奇数,如果为偶数的情况下添加…
mongodb系列之-管理mongodb->db.currentOp() 管理mongodb->db.currentOp(), 绝对是原创... 今天公司的dba在内部分享了针对mysql上具体的每个crud语句操作如何进行控制管理(利用的inntop工具),挺好的.这里,我也献丑下,在mongodb中如何管理具体的每个crud操作(比如某个查询语句慢,太占资源,直接可以将其kill掉,这貌似很暴力哈,不过没关系,有时候不得已而为之...不过mongodb中可不是用第三方的工具哦,而是自家实现…
1. 启动服务器 1.1 启动配置服务器 配置服务器是集群的大脑,保存着关于每个服务器包含哪些数据的所有元数据,因此,必须首先创建配置服务器. 由于资源限制,在同一机器上启动三个进程 # mkdir /home/mongo/cs1 # mkdir /home/mongo/cs2 # mkdir /home/mongo/cs3 # mongod --configsvr --replSet configRS --bind_ip localhost --port 27038 --dbpath /hom…
上篇讲了MongoDB的基础知识,大家应该对MongoDB有所了解了,当然真正用的还是curd操作,本篇为大家讲解MongoDB的curd操作. 1.数据库操作 #.增 use config #如果数据库不存在,则创建数据库,否则切换到指定数据库. #.查 show dbs #查看所有 要想显示出刚创建的数据库,我们需要向数据库插入一些数据. db.table1.insert({}) #.删 use config #先切换到要删的库下 db.dropDatabase() #删除当前库 2.集合操…
MongoDB-——Privilege 学习大纲: 1.用户权限管理 2.用户操作 知识回顾:  本系列上一篇博文我们讲述了如何搭建环境以及配置我们的MongoDB,通过搭建环境后我们又学习了如何通过简单的命令和配置来启动关闭我们的MongoDB. 一 用户及权限管理 前言: MongoDB 作为时下最为热门的数据库,那么其安全验证也是必不可少的,否则一个没有验证的数据库暴露出去,任何人可随意操作,这将是非常危险的.我们可以通过使用为MongoDB 创建用户的方式来降低风险 1 MongoDB用…
简介 MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案.  MongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSql数据库中比较热门的一种. MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的.他支持的数据结构非常松散,是类似 json的bjson格式,因此可以存储比较复杂的数据类型.Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的…
最近在又在倒腾MongoDB,把安装配置的相关命令贴出来 1.下载 wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.2.8.tgz 2.解压 tar zxvf mongodb-linux-x86_64-rhel70-3.2.8.tgz mv mongodb-linux-x86_64-rhel70-3.2.8 /usr/local/ mv mongodb-linux-x86_64-rhel70-3.2.8 mo…
这个系列主要总结学习MongoDb过程中的一些经验. 简单介绍及环境搭建 常用命令 C#驱动及应用 管理工具MongoVUE使用…
一.概念 使用聚合框架可以对集合中的文档进行变换和组合.基本上,可以用多个构件创建一个管道(pipeline),用于对一连串的文档进行处理.这些构件包括筛选(filtering).投射(projecting).分组(grouping).排序(sorting).限制(limiting)和跳过(skipping). 二.聚合函数 db.driverLocation.aggregate( {"$match":{"areaCode":"350203"}}…
在上篇 MongoDB常用操作练习 中,我们在命令提示符窗口使用简单的mongdb的方法操作数据库,实现增删改查及其他的功能.在本篇中,我们将mongodb与spring boot进行整合,也就是在java中使用mongodb.当然了,这个只是一个简单到不能再简单的demo,我只是为了练手.实际项目中应用肯定比这复杂多了.话不多说,上代码. 一.pom.xml 在这里我集成的依赖有web,test,mongodb,devtools.其中devtools是热部署,它会自动的编译代码.如果不加入这个…
Mongodb提供了很多的客户端: shell,python, java, node.js...等等. 以 java 为例实现简单的增删改查 pom文件: <dependencies> <dependency> <groupId>org.mongodb</groupId> <artifactId>mongodb-driver</artifactId> <version>3.4.3</version> </…
MongoDB的三元素,数据库.集合.文档,集合就是表,文档就是行 开启MongoDB,cd切换到MongoDB的安装目录下的bin目录里,使用命令mongod 开启,参数:--dbpath 路径,把数据存放在这个路径下mongod --dbpath E:\xxxx进入MongoDB管理界面,在bin目录里,使用命令mongo 创建一个数据库,使用命令 use 数据库名,例如:use mydb显示当前数据库,使用命令 db显示所有的数据库,使用命令 show dbs 增删查改 添加一个集合,mo…
一.连接 mongodb 数据库 以下操作默认都是以上面操作为前提(已连接成功)而做的操作 二.查的各种姿势 1)通过主键_id来查询,注意:_id不是直接用字符串来表示,要用 new \MongoDB\BSON\ObjectId 对象 // mysql: SELECT * FROM appDownloadRecord WHERE _id='5a2b9aaf96b4a97efbe31a91'; $id = new \MongoDB\BSON\ObjectId("5a2b9aaf96b4a97ef…
我们在  MongoDB 之 你得知道MongoDB是个什么鬼 MongoDB - 1  中学习了如果安装部署一个 MongoDB 如果没看到我的金玉良言的话,就重新打开一次客户端和服务端吧 本章我们来学习一下关于 MongoDB的增删改查 一.MongoDB操作 之 原生ORM,根本不存在SQL语句 创建数据库:这里和一般的关系型数据库一样,都要先建立一个自己的数据库空间 嗯嗯嗯嗯,我感受到了你内心的惊呼,瞅瞅你们这些没见过世面的样子 是的,MongoDB设计的比较随意,没有就认为你是在创建,…
Mongodb的集群方式的搭建有三种:Replica Set / Sharding / Master-Slaver.这里只说明最简单的集群搭建方式(Replica Set) Replica Set Mongodb(M)表示主节点,Mongodb(S)表示备节点,Mongodb(A)表示仲裁节点.主备节点存储数据,仲裁节点不存储数据.客户端同时连接主节点与备节点,不连接仲裁节点. 默认设置下,主节点提供所有增删查改服务,备节点不提供任何服务.但是可以通过设置使备节点提供查询服务,这样就可以减少主节…
什么是MongoDB MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统. 在高负载的情况下,添加更多的节点,可以保证服务器性能. MongoDB 旨在为应用提供可扩展的高性能数据存储解决方案. MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成. MongoDB 文档(BSON)类似于 JSON 对象.字段值可以包含其他文档,数组及文档数组. MongoDB的特点 1. MongoDB的提供了一个面向文档存储,操作起来比较简单和容易.…
1)使用mongodb连接mongo var mongo = require('mongodb'), //引入mongodb dbHost = '127.0.0.1', dbPort = 27017;//配置基本的信息 var Db = mongo.Db; var Connection = mongo.Connection; var Server = mongo.Server; var db = new Db ('local', new Server(dbHost, dbPort), {safe…
索引总概况 db.test.ensureIndex({"username":1})//创建索引 db.test.ensureIndex({"username":1, "age":-1})//创建复合索引 数字1表示username键的索引按升序存储,-1表示age键的索引按照降序方式存储. // 该索引被创建后,基于username和age的查询将会用到该索引,或者是基于username的查询也会用到该索引,但是只是基于age的查询将不会用到该复…
查询 <?php $m=new MongoClient('mongodb://admin:admin@localhost:27017/admin'); $db=$m->hndb; $cc=$db->stu->find([],['name']); foreach ($cc as $v){ echo $v['name'].'<br>'; } 删除 $m->hndb->stu->drop(); 数据的保存 $db=$m->hndb; $book=$db…
一.MongoDB在Windows平台下的安装: 安装包官方下载地址:http://www.mongodb.org/downloads 第一步:下载安装包:如果是win系统,注意是64位还是32位版本的,请选择正确的版本. 第二步:新建目录“D:\MongoDB”,解压下载到的安装包,找到bin目录下面全部.exe文件,拷贝到刚创建的目录下. 第三步:在“D:\MongoDB”目录下新建“data”文件夹,它将会作为数据存放的根文件夹. 打开CMD窗口,按照如下方式输入命令:> d:> cd…
今天我测试了一下MongoDB的副本集的配置. 首先从概念上说一下MongoDB副本集和主从复制的区别.其实副本集(Replica Set)是主从复制的高级形式.高级在哪里呢?主动复制实现了数据备份+读扩展,但是master一旦down掉,需要手动启动slave.副本集在此基础上实现了备份自动重启的功能,也就是某一台slave会挺身而出,担当起master的职责.所以有三个角色,master(Primary),slave(Secondary),还有仲裁服务器(这哥们指定哪台slave应该挺身而出…
1.首先切换到mongodb安装目录下的bin目录,在控制台直接运行以下命令 "C:\Program Files\MongoDB\Server\3.0\bin\mongod.exe" --logpath "D:\mongodb\logs\mongodb.log" --dbpath "D:\mongodb\data" --install --journal ps: 1.必须用管理员身份在命令后运行控制台 2.d盘下必须先创建好mongodb/dat…
之前写过一篇关于MongoDB的封装 发现太过繁琐 于是打算从新写一篇简易版 1:关于MongoDB的安装请自行百度,进行权限认证的时候有一个小坑,3.0之后授权认证方式默认的SCRAM-SHA-1模式, 需要首先命令创建一个用户,然后Drop掉这个用户,然后修改system.version里的authScheam为3,在没有创建用户的情况下 authScheam的值貌似是查询不到的. 修改成3后,授权验证方式就变成了MONGODB-CR  2:建立一个聚合根和实体 public interfa…
1.先去树莓派官网下载最新的ROM https://www.raspberrypi.org/downloads/raspbian/ 这里选的是: RASPBIAN JESSIE WITH DESKTOP 日期是2017.7.5 下载后得到文件: 2017-07-05-raspbian-jessie.zip 解压后: 2017-07-05-raspbian-jessie 2.准备软件 win32 disk imager 选择刚解压好的img文件, 指定目标U盘(建议准备一张16GB的TF卡) 点击…
一.简述 MongoDB中使用find来进行查询.查询就是返回一个集合中文档的子集,子集合的范围从0个文档到整个集合.默认情况下,"_id"这个键总是被返回,即便是没有指定要返回这个键.("_id"是一个集合中每个文档的唯一标识) 查询的使用上有限制,传递给数据库的查询文档必须是常量.(当然,在你的代码里可以是正常的变量) 一个键可以有任意多个条件,但是一个键不能对应多个更新修改器. 条件语句是内层文档的键,而修改器是外层文档的键. 二.使用find或者findOn…