原文地址:http://www.cnblogs.com/huangxincheng/archive/2012/02/19/2357846.html 看过上一篇,相信大家都会知道如何开启mongodb了,这篇就细说下其中的增删查改,首先当我们用上一篇同样的方式打开mongodb,突然 傻眼了,擦,竟然开启不了,仔细观察“划线区域“的信息,发现db文件夹下有一个类似的”lock file”阻止了mongodb的开启,接下来我们要做的就 是干掉它,之后,开启成功,关于mongodb的管理方式将在后续文…
一: Insert操作 上一篇也说过,文档是采用“K-V”格式存储的,如果大家对JSON比较熟悉的话,我相信学mongodb是手到擒来,我们知道JSON里面Value 可能是“字符串”,可能是“数组”,又有可能是内嵌的一个JSON对象,相同的方式也适合于BSON. 常见的插入操作也就两种形式存在:“单条插入”和“批量插入”. ①  单条插入 先前也说了,mongo命令打开的是一个javascript shell.所以js的语法在这里面都行得通,看起来是不是很牛X. 示例: var single=…
随笔分类 - MongoDB 双十一来了,别让你的mongodb宕机了 摘要: 好久没过来吹牛了,前段时间一直赶项目,没有时间来更新博客,项目也终于赶完了,接下来就要面临双十一这场惊心动魄的处女秀考验, 我们项目中会有一个wcf集群,而集群地址则放在mongodb中,所以mongodb的核心地位可想而知,如果mongodb挂掉,整个项目也就陷入 瘫痪,想让mongodb不宕机,阅读全文 posted @ 2015-10-12 00:46 一线码农 阅读(8014) | 评论 (36) 编辑 8天…
随笔分类 - MongoDB 8天学通MongoDB——第八天 驱动实践 摘要: 作为系列的最后一篇,得要说说C#驱动对mongodb的操作,目前驱动有两种:官方驱动和samus驱动,不过我个人还是喜欢后者,因为提供了丰富的linq操作,相当方便.官方驱动:https://github.com/mongodb/mongo-csharp-driver/downloads.下载后,还提供了一个酷似msdn的帮助文档.samus驱动:https://github.com/samus/mongodb-c…
原文地址:http://www.cnblogs.com/huangxincheng/archive/2012/02/18/2356595.html 关于mongodb的好处,优点之类的这里就不说了,唯一要讲的一点就是mongodb中有三元素:数据库,集合,文档,其中“集合” 就是对应关系数据库中的“表”,“文档”对应“行”. 一: 下载 上MongoDB官网 ,我们发现有32bit和64bit,这个就要看你系统了,不过这里有两点注意: ①:根据业界规则,偶数为“稳定版”(如:1.6.X,1.8.…
关于mongodb的好处,优点之类的这里就不说了,唯一要讲的一点就是mongodb中有三元素:数据库,集合,文档,其中“集合” 就是对应关系数据库中的“表”,“文档”对应“行”. 一: 下载 上MongoDB官网 ,我们发现有32bit和64bit,这个就要看你系统了,不过这里有两点注意: ①:根据业界规则,偶数为“稳定版”(如:1.6.X,1.8.X),奇数为“开发版”(如:1.7.X,1.9.X),这两个版本的区别相信大家都知道吧. ②:32bit的mongodb最大只能存放2G的数据,64…
转自:http://www.cnblogs.com/huangxincheng/archive/2012/02/18/2356595.html 关于mongodb的好处,优点之类的这里就不说了,唯一要讲的一点就是mongodb中有三元素:数据库,集合,文档,其中“集合” 就是对应关系数据库中的“表”,“文档”对应“行”. 一: 下载 上MongoDB官网 ,我们发现有32bit和64bit,这个就要看你系统了,不过这里有两点注意: ①:根据业界规则,偶数为“稳定版”(如:1.6.X,1.8.X)…
MongoDB的增删查改基本操作 先决条件建库.建集合.建文档 连接mongo,如果连接不上什么连接拒绝,输入mongod命令,启动服务后 输入mongo show dbs 显示当前的所有的数据库 一般会显示local 我们创建别的数据库 创建数据库,录入数据 use maliang db.movies.insert({title:"北京爱上西雅图"}) db.movies.insert({title:"大唐玄奘"}) 这样两条数据就录入到数据库[maliang]集…
我们总不能一直使用cmd对数据库操作,数据库总是要在程序中使用的.今天来说一下怎么通过Java调用MongoDB. 学习一下最基本也是最常用的增删查改语句,这是使用数据库的基础. 注意事项: 1.要打开mongod.exe,程序运行期间要一直开着. 2.Java项目里面要导入mongo的jar包,mongo-版本号-jar. 以下为代码: public class MongoTest { public static void main(String args[]) throws UnknownH…
        对于我们这样的菜鸟来说,最重要的不是数据库的管理,也不是数据库的性能,更不是数据库的扩展,而是怎么用好这款数据库,也就是一个数据库提供的最核心的功能,增删查改.         由于MongoDB存储数据都是以文档的模式.所以在操作它的数据时.也是以文档为单位的. 那么我们实现增删查改也是以文档为基础.不知道文档是什么的同学能够看看上篇介绍的基本概念. 1.插入文档         向MongoDB集合中插入文档的基本方法是insert: 单个插入 > document = {k…
MongoDB数据库的增删查改 1.插入数据 语法: db.集合名称.insert(document) db.table_name.insert({name:'gj',gender:1}) db.table_name.insert({_id:"20170101",name:'gj',gender:1}) 插⼊⽂档时, 如果不指定_id参数,MongoDB会为⽂档分配⼀个唯⼀的ObjectId 使用insert时如果指定的_id在数据表中已经存在,则插入数据失败 例子: > db.…
MongoDB的三元素,数据库.集合.文档,集合就是表,文档就是行 开启MongoDB,cd切换到MongoDB的安装目录下的bin目录里,使用命令mongod 开启,参数:--dbpath 路径,把数据存放在这个路径下mongod --dbpath E:\xxxx进入MongoDB管理界面,在bin目录里,使用命令mongo 创建一个数据库,使用命令 use 数据库名,例如:use mydb显示当前数据库,使用命令 db显示所有的数据库,使用命令 show dbs 增删查改 添加一个集合,mo…
注意: monogdb数据在使用之后必须及时 mongodb.close()否则后台崩溃. 在之前的文章中,我已经介绍了什么事MongoDB以及怎么在windows下安装MongoDB等等基本知识. 所以这篇进阶的博客就主要介绍以下如何进行数据库的基本操作 --- 增删查 mongoDB 官方文档 如下操作分为对 数据库.集合.文档的操作,操作的步骤为 创建.查看.删除,这样更容易理解和记忆. 数据库相关 创建数据库: use <数据库名> 值得注意的是: use 后的数据库如果不存在就创建,…
今天跟大家分享一下mongodb中比较好玩的知识,主要包括:聚合,游标. 一: 聚合 常见的聚合操作跟sql server一样,有:count,distinct,group,mapReduce. <1> count count是最简单,最容易,也是最常用的聚合工具,它的使用跟我们C#里面的count使用简直一模一样. <2> distinct 这个操作相信大家也是非常熟悉的,指定了谁,谁就不能重复,直接上图. <3> group 在mongodb里面做group操作有点…
原文地址:http://www.cnblogs.com/huangxincheng/archive/2012/02/21/2361205.html 今天跟大家分享一下mongodb中比较好玩的知识,主要包括:聚合,游标. 一: 聚合 常见的聚合操作跟sql server一样,有:count,distinct,group,mapReduce. <1> count count是最简单,最容易,也是最常用的聚合工具,它的使用跟我们C#里面的count使用简直一模一样. <2> disti…
作为系列的最后一篇,得要说说C#驱动对mongodb的操作,目前驱动有两种:官方驱动和samus驱动,不过我个人还是喜欢后者, 因为提供了丰富的linq操作,相当方便. 官方驱动:https://github.com/mongodb/mongo-csharp-driver/downloads.下载后,还提供了一个酷似msdn的帮助文档. samus驱动:https://github.com/samus/mongodb-csharp/downloads. 下面就具体看看samus驱动,https:…
这些天项目改版,时间比较紧,博客也就没跟得上,还望大家见谅. 好,今天分享下mongodb中关于索引的基本操作,我们日常做开发都避免不了要对程序进行性能优化,而程序的操作无非就是CURD,通常我们 又会花费50%的时间在R上面,因为Read操作对用户来说是非常敏感的,处理不好就会被人唾弃,呵呵. 从算法上来说有5种经典的查找,具体的可以参见我的算法速成系列,这其中就包括我们今天所说的“索引查找”,如果大家对sqlserver比较了解 的话,相信索引查找能给我们带来什么样的性能提升吧. 我们首先插…
这一篇我们以管理员的视角来看mongodb,作为一名管理员,我们经常接触到的主要有4个方面: 1.  安装部署 2.  状态监控 3.  安全认证 4.  备份和恢复, 下面我们就一点一点的讲解. 一:安装部署 我之前的文章都是采用console程序来承载,不过在生产环境中这并不是最佳实践,谁也不愿意在机器重启后满地找牙似找mongodb, 在mongodb里面提供了一个叫做“服务寄宿”的模式,我想如果大家对wcf比较熟悉的话很容易听懂.好了,我们实践一下,这里我开一下D盘 里面的mongodb…
作为系列的最后一篇,得要说说C#驱动对mongodb的操作,目前驱动有两种:官方驱动和samus驱动,不过我个人还是喜欢后者, 因为提供了丰富的linq操作,相当方便. 官方驱动:https://github.com/mongodb/mongo-csharp-driver/downloads.下载后,还提供了一个酷似msdn的帮助文档. samus驱动:https://github.com/samus/mongodb-csharp/downloads. 下面就具体看看samus驱动,https:…
在mongodb里面存在另一种集群,就是分片技术,跟sql server的表分区类似,我们知道当数据量达到T级别的时候,我们的磁盘,内存 就吃不消了,针对这样的场景我们该如何应对. 一:分片 mongodb采用将集合进行拆分,然后将拆分的数据均摊到几个片上的一种解决方案. 下面我对这张图解释一下: 人脸:       代表客户端,客户端肯定说,你数据库分片不分片跟我没关系,我叫你干啥就干啥,没什么好商量的. mongos: 首先我们要了解”片键“的概念,也就是说拆分集合的依据是什么?按照什么键值…
从这一篇开始我们主要讨论mongodb的部署技术. 我们知道sql server能够做到读写分离,双机热备份和集群部署,当然mongodb也能做到,实际应用中我们不希望数据库采用单点部署, 如果碰到数据库宕机或者被毁灭性破坏那是多么的糟糕. 一:主从复制 1: 首先看看模型图 2: 从上面的图形中我们可以分析出这种架构有如下的好处: <1>  数据备份. <2>  数据恢复. <3>  读写分离. 3:下面我们就一一实践 实际应用中我们肯定是多服务器部署,限于自己懒的装…
这些天项目改版,时间比较紧,博客也就没跟得上,还望大家见谅. 好,今天分享下mongodb中关于索引的基本操作,我们日常做开发都避免不了要对程序进行性能优化,而程序的操作无非就是CURD,通常我们 又会花费50%的时间在R上面,因为Read操作对用户来说是非常敏感的,处理不好就会被人唾弃,呵呵. 从算法上来说有5种经典的查找,具体的可以参见我的算法速成系列,这其中就包括我们今天所说的“索引查找”,如果大家对sqlserver比较了解 的话,相信索引查找能给我们带来什么样的性能提升吧. 我们首先插…
一.查 1.查询集合中所有文档:db.集合名.find(). 2.查询集合中第一个文档:db.集合名.findOne(). 3.指定查询条件:第一个参数就是指定查询条件 查询全部文档:db.集合名.find({}),如下图: 五种基本的查询条件:$lt(<).$lte(<=).$gt(>).$gte(>=).$ne(!=),如下图:从第 一个实验可以发现,当对某个key,该key的value中同时指定了多个查询条件,这些查询条件的关系是“与”关系:但是从第二个和第三个实现中可以发…
连接mongodb #!/usr/bin/env python # -*- coding:utf-8 -*- import pymongo mongo_client = pymongo.MongoClient(host = db_host,port = db_port)#连接mongodb mongo_db = mongo_client[db_name]#连接一个库 指定集合 MongoDB的每个数据库又包含许多集合(collection),它们类似于关系型数据库中的表. 下一步需要指定要操作的…
首先添加所需要驱动包(可通过nuget获得) using MongoDB.Bson;using MongoDB.Driver;using MongoDB.Driver.Builders; 一.设置配置信息 //连接信息 static string conn = "mongodb://localhost"; static string database = "test"; static string collection = "person"; s…
发现一篇Java操作MongoDb不错的文章,记录一下: https://www.cnblogs.com/sa-dan/p/6836055.html 基本功能. import java.util.ArrayList; import java.util.List; import org.bson.Document; import com.mongodb.MongoClient; import com.mongodb.client.MongoCollection; import com.mongod…
1.insert db.Customers.insert({ "DateTest":new Date(), "IntTest":32, "DoubleTest":3.1415926, "StringTest":"Test", "BoolTest":true, "ArryTest":["a", "b", "c"…
#!/user/bin/python# -*- coding:utf-8 -*-dic1 = {'age':24,'name':'zd','sex':'boy'}print(dic1)#增dic1['high'] = 175 #没有建就添加dic1['sex'] = 'boy1' #有建就修改print(dic1)dic1.setdefault('weight',232) #有的话不做任何操作m没有的话就添加print(dic1)#删print(dic1.pop('age'))#有返回值按键去删…
#!/user/bin/python# -*- coding:utf-8 -*-tu = ('zs','ls','ww',[1,2,3,4,5,'zxcvb'],'zl')print(tu[3])print(tu[0:4])for i in tu: print(i)tu[3][5] = tu[3][5].upper()print(tu)tu[3].append('fdsfds')print(tu)…
#!/user/bin/python# -*- coding:utf-8 -*-li = [3,5,6546,6,8,324,2,1,34,5,6,7]# li.sort() #正向# print(li)# li.sort(reverse=True) #倒向# print(li)li.reverse()print(li)…