Below you will find pages that utilize the taxonomy term “MongoDB”
April 13, 2017
MongoDB中字段的添加与删除
"\u003cp\u003emongoDB添加和删除表中一个字段\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e使用update命令\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eupdate命令格式:\u003c/p\u003e\n\u003cp\u003edb.collection.update(criteria,objNew,upsert,multi)\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e参数说明:\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003ecriteria:查询条件\u003c/p\u003e\n\u003cp\u003eobjNew:update对象和一些更新操作符\u003c/p\u003e\n\u003cp\u003eupsert:如果不存在update的记录,是否插入objNew这个新的文档,true为插入,默认为false,不插入。\u003c/p\u003e\n\u003cp\u003emulti:默认是false,只更新找到的第一条记录。如果为true,把按条件查询出来的记录全部更新。\u003c/p\u003e\n\u003cp\u003e//例如要把User表中address字段删除\ndb.User.update({},{$unset:{‘address’:”}},false, true)\u003c/p\u003e\n\u003cp\u003e参考: \u003ca href=\"https://docs.mongodb.com/manual/reference/method/db.collection.update/#update-parameter\"\u003ehttps://docs.mongodb.com/manual/reference/method/db.collection.update/#update-parameter\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e==================\u003c/p\u003e\n\u003cp\u003e添加一列 $set\u003c/p\u003e\n\u003cp\u003e//字符类型\ndb.User.update({},{$set:{‘app_id’:’1′}}, …\u003c/p\u003e"
May 25, 2012
从PHP客户端看MongoDB通信协议
"\u003cp\u003eMongoDB的 PHP 客户端有一个 MongoCursor 类,它是用于获取一次查询结果集的句柄(或者叫游标),这个简单的取数据操作,内部实现其实不是那么简单。本文就通过对 MongoCursor 类一些操作进行分析,向大家揭开 MongoDB 客户端服务器通信的一些内部细节。\u003c/p\u003e\n\u003ch3 id=\"getnext与网络请求\"\u003egetNext与网络请求\u003c/h3\u003e\n\u003cp\u003e通常来说,每一次find操作都会返回一个MongoCursor对象,在这个对象上调用getNext方法,就能够获得一条结果数据。循环调用getNext方法就能获取多条数据。下面我们就来看看其内部取数据的具体逻辑。\u003c/p\u003e\n\u003cp\u003e首先我们用最简单的方法来生成一个MongoCursor对象:\u003c/p\u003e\n\u003cpre tabindex=\"0\"\u003e\u003ccode\u003e$m = new Mongo();\n$collection = $m-\u0026gt;demoDb-\u0026gt;demoCollection;\n$cursor = $collection-\u0026gt;find();\n\u003c/code\u003e\u003c/pre\u003e\u003cp\u003e当我们调用 find 方法的时候,会生成一个 MongoCursor 对象,而这时候只是生成一个内存中的对象而已,并不会把我们的 find 查询发送到服务端,因为在生成 MongoCursor 对象后,我们还可能对 …\u003c/p\u003e"
May 12, 2012
MongoDB 客户端 MongoVue
"\u003cp\u003e今天在同事那里看到了一个很不错的MongoDB的客户端工具MongoVue,地址是\u003ca href=\"http://www.mongovue.com/\" title=\"http://www.mongovue.com/\"\u003ehttp://www.mongovue.com/\u003c/a\u003e。做的不错,1.0版本的开始收费了,费用也不贵才35$。真正需要的同学可以掏点钱买个吧,也算是支持这个工具,如果只是学习研究用的话我这里还有一个0.9.7版本,虽然比起1.0版来说有些bug,平常使用也够了,需要的同学可以单独联系我。\u003c/p\u003e\n\u003cp\u003e1.0版之后超过15天后功能受限。可以通过删除以下注册表项来解除限制:\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[HKEY_CURRENT_USER\\Software\\Classes\\CLSID{B1159E65-821C3-21C5-CE21-34A484D54444}\\4FF78130]\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e把这个项下的值全删掉就可以了。\u003c/p\u003e\n\u003cp\u003e下面上图给大家感受下强大的MongoVue,可以提高你使用MongoDB的幸福指数好几十点,上图是王道:\u003c/p\u003e\n\u003cp\u003e1、配置连接\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://images.cnblogs.com/cnblogs_com/shanyou/201105/201105202156379291.png\"\u003e\u003cimg src=\"http://images.cnblogs.com/cnblogs_com/shanyou/201105/201105202156425175.png\" alt=\"image\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e2、试下新建一个名为AccessLog的Collection :\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://images.cnblogs.com/cnblogs_com/shanyou/201105/201105202156459404.png\"\u003e\u003cimg src=\"http://images.cnblogs.com/cnblogs_com/shanyou/201105/20110520215648644.png\" alt=\"image\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://images.cnblogs.com/cnblogs_com/shanyou/201105/201105202156514807.png\"\u003e\u003cimg src=\"http://images.cnblogs.com/cnblogs_com/shanyou/201105/201105202156569851.png\" alt=\"image\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e3、插入一个Document\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://images.cnblogs.com/cnblogs_com/shanyou/201105/201105202157028144.png\"\u003e\u003cimg src=\"http://images.cnblogs.com/cnblogs_com/shanyou/201105/201105202157041435.png\" alt=\"image\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e4、查看我们插入的数据,数据可以通过多种方式展示(树形、表格、文本)\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://images.cnblogs.com/cnblogs_com/shanyou/201105/201105202157089643.png\"\u003e\u003cimg src=\"http://images.cnblogs.com/cnblogs_com/shanyou/201105/201105202157113806.png\" alt=\"image\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e上面我们都是通过图形界面的操作的吧,下面有一个窗口 …\u003c/p\u003e"
May 10, 2012
Mongodb 与mysql 语法比较
"\u003cp\u003emongodb与mysql命令对比\u003c/p\u003e\n\u003cp\u003e传统的关系数据库一般由数据库(database)、表(table)、记录(record)三个层次概念组成,MongoDB是由**数据库(database)、集合(collection)、文档对象(document)**三个层次组成。MongoDB对于关系型数据库里的表,但是集合中没有列、行和关系概念,这体现了模式自由的特点。\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eMySQL\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eMongoDB\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e说明\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003emysqld\u003c/p\u003e\n\u003cp\u003emongod\u003c/p\u003e\n\u003cp\u003e服务器守护进程\u003c/p\u003e\n\u003cp\u003emysql\u003c/p\u003e\n\u003cp\u003emongo\u003c/p\u003e\n\u003cp\u003e客户端工具\u003c/p\u003e\n\u003cp\u003emysqldump\u003c/p\u003e\n\u003cp\u003emongodump\u003c/p\u003e\n\u003cp\u003e逻辑备份工具\u003c/p\u003e\n\u003cp\u003emysql\u003c/p\u003e\n\u003cp\u003emongorestore\u003c/p\u003e\n\u003cp\u003e逻辑恢复工具\u003c/p\u003e\n\u003cp\u003edb.repairDatabase()\u003c/p\u003e\n\u003cp\u003e修复数据库\u003c/p\u003e\n\u003cp\u003emysqldump\u003c/p\u003e\n\u003cp\u003emongoexport\u003c/p\u003e\n\u003cp\u003e数据导出工具\u003c/p\u003e\n\u003cp\u003esource\u003c/p\u003e\n\u003cp\u003emongoimport\u003c/p\u003e\n\u003cp\u003e数据导入工具\u003c/p\u003e\n\u003cp\u003egrant * privileges on \u003cem\u003e.\u003c/em\u003e to …\u003c/p\u003e\n\u003cp\u003eDb.addUser()\u003c/p\u003e\n\u003cp\u003eDb.auth()\u003c/p\u003e\n\u003cp\u003e新建用户并权限\u003c/p\u003e\n\u003cp\u003eshow databases\u003c/p\u003e\n\u003cp\u003eshow dbs\u003c/p\u003e\n\u003cp\u003e显示库列表\u003c/p\u003e\n\u003cp\u003eShow tables\u003c/p\u003e\n\u003cp\u003eShow collections …\u003c/p\u003e"
May 10, 2012
MongoDB数据库优化:Mongo Database Profiler
"\u003cp\u003e在MySQL中,慢查询日志是经常作为我们优化数据库的依据,那在MongoDB中是否有类似的功能呢?答案是肯定的,那就是Mongo Database Profiler.不仅有,而且还有一些比MySQL的Slow Query Log更详细的信息。它就是我们这篇文章的主题。\u003c/p\u003e\n\u003cp\u003e** 开启 Profiling 功能**\u003c/p\u003e\n\u003cp\u003e有两种方式可以控制 Profiling 的开关和级别,第一种是直接在启动参数里直接进行设置。\u003c/p\u003e\n\u003cp\u003e启动MongoDB时加上–profile=级别 即可。\u003c/p\u003e\n\u003cp\u003e也可以在客户端调用db.setProfilingLevel(级别) 命令来实时配置。可以通过db.getProfilingLevel()命令来获取当前的Profile级别。\n \u0026gt; db.setProfilingLevel(2);\u003c/p\u003e\n\u003cp\u003e{“was” : 0 , “ok” : 1}\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e db.getProfilingLevel()\n 上面斜体的级别可以取0,1,2 三个值,他们表示的意义如下:\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e0 – 不开启\u003c/p\u003e\n\u003cp\u003e1 – 记录慢命令 (默认为\u0026gt;100ms)\u003c/p\u003e\n\u003cp\u003e2 – 记录所有命令\u003c/p\u003e\n\u003cp\u003eProfile 记录在级别1时会记录慢命令,那么这 …\u003c/p\u003e"
May 7, 2012
Mongodb亿级数据量的性能测试
"\u003cp\u003e进行了一下Mongodb亿级数据量的性能测试,分别测试如下几个项目:\u003c/p\u003e\n\u003cp\u003e(所有插入都是单线程进行,所有读取都是多线程进行)\u003c/p\u003e\n\u003cp\u003e1) 普通插入性能 (插入的数据每条大约在1KB左右)\u003c/p\u003e\n\u003cp\u003e2) 批量插入性能 (使用的是官方C#客户端的InsertBatch),这个测的是批量插入性能能有多少提高\u003c/p\u003e\n\u003cp\u003e3) 安全插入功能 (确保插入成功,使用的是SafeMode.True开关),这个测的是安全插入性能会差多少\u003c/p\u003e\n\u003cp\u003e4) 查询一个索引后的数字列,返回10条记录(也就是10KB)的性能,这个测的是索引查询的性能\u003c/p\u003e\n\u003cp\u003e5) 查询两个索引后的数字列,返回10条记录(每条记录只返回20字节左右的2个小字段)的性能,这个测的是返回小数据量以及多一个查询条件对性能的影响\u003c/p\u003e\n\u003cp\u003e6) 查询一个索引后的数字列,按照另一个索引的日期字段排序(索引建立的时候是倒序,排序也是倒序),并且Skip100条记录后返回10条记录的性能,这个测的是Skip和Order对性能的影响\u003c/p\u003e\n\u003cp\u003e7) 查询100条记录(也就是100KB)的性能(没有排序,没有条件),这个测的是大数据量的查询结果对性能的影响\u003c/p\u003e\n\u003cp\u003e8) 统计随着测试的进行,总磁盘占用,索引磁盘占用以及数 …\u003c/p\u003e"
May 7, 2012
mongodb索引讲解与性能调优
"\u003cp\u003emongodb索引规则基本上与传统的关系库一样,大部分优化MySQL/Oracle/SQLite索引的技巧也适用于mongodb。\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e一、 为什么用索引:\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e当查询中用到某些条件时,可以对该键建立索引,以提高查询速度。\u003c/p\u003e\n\u003cp\u003e如果数据量很多且查询多于更新时,可以用索引提高查询的速度。\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e二、 索引管理:\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003ea) 查询索引:\u003c/p\u003e\n\u003col\u003e\n\u003cli\u003e查询已有索引的明细:\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003e查询索引很简单,比如说需要查询mailaccess数据库中的Mail collection上的索引时:\u003c/p\u003e\n\u003cp\u003emongo 进入mongo\u003c/p\u003e\n\u003cp\u003eMongoDB shell version: 1.8.1\u003c/p\u003e\n\u003cp\u003econnecting to: test\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003euse mailaccess 进入mailaccess database\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003eswitched to db mailaccess\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003edb.Mail.getIndexes() 查询索引明细\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e[\u003c/p\u003e\n\u003cp\u003e{\u003c/p\u003e\n\u003cp\u003e“name” : “_id_”,\u003c/p\u003e\n\u003cp\u003e“ns” : “mailaccess.Mail”,\u003c/p\u003e\n\u003cp\u003e“key” : { …\u003c/p\u003e"
May 7, 2012
MongoDB 索引数据类型优化,节省60%内存
"\u003cp\u003e最近trunk.ly的工程师通过mongostat发现了大量的page fault,然后通过检查发现,他们的索引已经超出内存限制了(没有\u003ca href=\"http://blog.boxedice.com/2010/12/13/mongodb-monitoring-keep-in-it-ram/\"\u003ekeep all index in RAM\u003c/a\u003e)。于是他们决定开始减小索引大小,通过测试得出了如下的数据,不同的数据类型的索引大小有2到3倍的差距。\u003c/p\u003e\n\u003cp\u003e虽然能够想像得到,但是直观的数据图可能让我们更深刻的认识到。他们的测试再一次告诉我们:给索引定一个好的数据结构是多么重要。\u003c/p\u003e\n\u003cp\u003e这是测试结果图,分别是用int、MongoDB的ObjectID、base64和md5的字符串做索引产生的索引大小:\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://blog.haohtml.com/wp-content/uploads/2012/05/mongodb_indexes_optimize.jpeg\"\u003e\u003cimg src=\"http://blog.haohtml.com/wp-content/uploads/2012/05/mongodb_indexes_optimize.jpeg\" alt=\"\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e测试过程也非常简单,首先用下面脚本将各种不同数据结构的数据写入到不同的collection里:\u003c/p\u003e\n\u003cpre tabindex=\"0\"\u003e\u003ccode\u003e#!/usr/bin/env python\n\nimport pymongo\nimport bson\nfrom pymongo import Connection\n\ndb = connection.test_database\n\nprint(\u0026#39;ObjectID\u0026#39;)\nfor i in range(1, 1000000): …\u003c/code\u003e\u003c/pre\u003e"
May 7, 2012
mongodb的监控与性能优化
"\u003cp\u003e\u003cstrong\u003e一.mongodb的监控\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003emongostat是mongdb自带的状态检测工具,在命令行下使用。它会间隔固定时间获取mongodb的当前运行状态,并输出。如果你发现数据库突然变慢或者有其他问题的话,你第一手的操作就考虑采用mongostat来查看mongo的状态。\u003c/p\u003e\n\u003cp\u003e\u003cimg src=\"http://photo.l99.com/bigger/30/1332836385675_ii0c6z.png\" alt=\"立方图片分享\"\u003e\u003c/p\u003e\n\u003cp\u003e它的输出有以下几列:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003einserts/s 每秒插入次数\u003c/li\u003e\n\u003cli\u003equery/s 每秒查询次数\u003c/li\u003e\n\u003cli\u003eupdate/s 每秒更新次数\u003c/li\u003e\n\u003cli\u003edelete/s 每秒删除次数\u003c/li\u003e\n\u003cli\u003egetmore/s 每秒执行getmore次数\u003c/li\u003e\n\u003cli\u003ecommand/s 每秒的命令数,比以上插入、查找、更新、删除的综合还多,还统计了别的命令\u003c/li\u003e\n\u003cli\u003eflushs/s 每秒执行fsync将数据写入硬盘的次数。\u003c/li\u003e\n\u003cli\u003emapped/s 所有的被mmap的数据量,单位是MB,\u003c/li\u003e\n\u003cli\u003evsize 虚拟内存使用量,单位MB\u003c/li\u003e\n\u003cli\u003eres 物理内存使用量,单位MB\u003c/li\u003e\n\u003cli\u003efaults/s 每秒访问失败数(只有Linux有),数据被交换出物理内存,放到swap。不要超过100,否则就是机器内存太小,造成频繁swap写入。此时要升级内存或者扩展\u003c/li\u003e\n\u003cli\u003elocked % 被锁的时间百分比,尽量控制在50%以下吧\u003c/li\u003e\n\u003cli\u003eidx miss …\u003c/li\u003e\u003c/ul\u003e"
May 3, 2012
三招解决MongoDB的磁盘IO问题
"\u003cp\u003e有点标题党的意思,不过下面三招确实比较实用,内容来自Conversocial公司的VP Colin Howe在London MongoDB用户组的一个分享。\n申请:下面几点并非放四海皆准的法则,具体是否能够使用,还需要根据自己的应用场景和数据特点来决定。\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e1.使用组合式的大文档\u003c/strong\u003e\n我们知道MongoDB是一个文档数据库,其每一条记录都是一个JSON格式的文档。比如像下面的例子,每一天会生成一条这样的统计数据:\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e{ metric: “content_count”, client: 5, value: 51, date: ISODate(“2012-04-01 13:00”) }\n{ metric: “content_count”, client: 5, value: 49, date: ISODate(“2012-04-02 13:00”) }\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e而如果采用组合式大文档的话,就可以这样将一个月的数据全部存到一条记录里:\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e{ metric: “content_count”, client: 5, month: “2012-04”, 1: 51, 2: 49, … }\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e通过上面两种方式存储, …\u003c/p\u003e"
April 27, 2012
[教程]mongodb常用维护命令
"\u003cp\u003e\u003cstrong\u003e1.客户端常用命令\n** #mongo\u003c/strong\u003e\n** \u0026gt;help //列出帮助**\n** \u0026gt;db.help() //db级别的帮助**\n** \u0026gt;db.mycollection.help() //collection 级别的帮助\u003c/p\u003e\n\u003cp\u003e \u003cstrong\u003e常用命令:\u003c/strong\u003e\n \u0026gt;show dbs //show database names\n \u0026gt;show collections //show collections in current database\n \u0026gt;use //set current database\n \u0026gt;db.foo.find() //list objects in collection foo\n \u0026gt;db.foo.find({a:1}) //list objects in foo where a == 1\n \u0026gt;db.createCollection(name, { size : …, capped : …, max : … } ) //创建collection …\u003c/p\u003e"
April 27, 2012
MongoDB之导入和导出
"\u003cp\u003e在上文中,我们了解了 \u003ca href=\"http://database.51cto.com/art/201105/263921.htm\"\u003e教你如何利用MySQL学习MongoDB之授权和权限\u003c/a\u003e,本文中我们继续我们的学习之旅,学习两者的\u003cstrong\u003e导入和导出\u003c/strong\u003e。\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e1、MySQL导入和导出\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e(1)、mysqlimport\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e此工具位于mysql/bin目录中,是MySQL的一个载入(或者说导入)数据的一个非常有效的工具。这是一个命令行工具。有两个参数以及大量的选项可供选择。这个工具把一个文本文件(text file)导入到你指定的数据库和表中。比方说我们要从文件student.txt中把数据导入到数据库class中的表 student中:\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e\u003cstrong\u003emysqlimport\u003c/strong\u003e class.student student.txt\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e\u003cstrong\u003e(2)、load data infile\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e这个命令与mysqlimport非常相似,但这个方法可以在MySQL命令行中使用。 如mysqlimport工具一样,这个命令也有一些可以选择的参数。比如您需要把自己的电脑上的数据导入到远程的数据库服务器中,您可以使用下面的命令:\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eLoad data local infile “d:\\student.txt” into table student;\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e上面的local …\u003c/p\u003e"
April 27, 2012
MongoDB非正常关闭后修复记录 mongod –repair
"\u003cp\u003emongod没有后台执行,在终端连接非正常断开后,再次执行mongod报错,如下所示:\u003c/p\u003e\n\u003cp\u003e[root@localhost mongodb]# ./bin/mongod\n./bin/mongod –help for help and startup options\nThu Nov 17 22:42:49\nThu Nov 17 22:42:49 warning: 32-bit servers don’t have journaling enabled by default. Please use –journal if you want durability.\nThu Nov 17 22:42:49\nThu Nov 17 22:42:49 [initandlisten] MongoDB starting : pid=3257 port=27017 dbpath=/data/db/ 32-bit host=localhost\nThu Nov 17 22:42:49 [initandlisten]\nThu Nov 17 22:42:49 [initandlisten] ** NOTE: when …\u003c/p\u003e"
April 9, 2012
MongoDB update数据语法
"\u003cp\u003e在前面的文章“ \u003ca href=\"http://hi.baidu.com/farmerluo/blog/item/2d15e95027aa86501138c27a.html\"\u003emongodb 查询的语法\u003c/a\u003e”里,我介绍了Mongodb的常用查询语法,Mongodb的update操作也有点复杂,我结合自己的使用经验,在这里介绍一下,给用mongodb的朋友看看,也方便以后自己用到的时候查阅:\u003c/p\u003e\n\u003cp\u003e注:在这篇文章及上篇文章内讲的语法介绍都是在mongodb shell环境内的,和真正运用语言编程(如java,php等)使用时,在使用方法上会有一些差别,但语法(如查询条件,$in,$inc等)是一样的。\u003c/p\u003e\n\u003cp\u003e本文是参考官方文档来介绍的,之所以有官方文档还要在这介绍,一方面是就当翻译,毕竟每次要用时去看英文文档比较累,第二是官方文档讲解比较简单,有时光看官方文档不好理解,我在实际操作的情况下可以做些补充。\u003c/p\u003e\n\u003cp\u003e好了,不多说了,下面正式开始:\u003c/p\u003e\n\u003cp\u003emongodb更新有两个命令:\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e1).update()命令\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003edb.collection.update( criteria, objNew, upsert, multi )\u003c/p\u003e\n\u003cp\u003ecriteria : update的查询条件,类似sql update查询内where后面的\nobjNew : update的对象和一些更新的操作符( …\u003c/p\u003e"
April 9, 2012
教你如何利用MySQL学习MongoDB之授权和权限
"\u003cp\u003e在上文中,我们了解了 \u003ca href=\"http://database.51cto.com/art/201105/263901.htm\"\u003e教你如何利用MySQL学习MongoDB之SQL语法\u003c/a\u003e,本文中我们继续我们的学习之旅,学习两者的授权和权限。\u003c/p\u003e\n\u003cp\u003e数据库的安全性是每一个DBA重点关注的部分,在数据库建立之后,数据的安全就显得尤为重要。\u003c/p\u003e\n\u003cp\u003e对于一个数据库管理员来说,安全性就意味着他必须保证那些具有特殊数据访问权限的用户能够登录到数据库服务器,并且能够访问数据以及对数据库对象实施各种权限范围内的操作;同时,DBA还要防止所有的非授权用户的非法操作。\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e1、MySQL授权和权限\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eMySQL中有两种级别的权限:管理和用户。所有权限都可分别使用 GRANT 和 REVOKE 语句授予和收回。可以授予用户create、select、update、delete、insert、execute、index 等权限,也可授予alter、drop和shutdown等系统权限。根用户root在默认情况下具有所有权限。\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e2、MongoDB授权和权限\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e官方文档开启MongoDB 服务时不添加任何参数时,可以对数据库任意操作,而且可以远程访问数据库,所以推荐只是在开发是才这样不设置任何参数。如果启动的时候指定–auth参数,可以从阻止 …\u003c/p\u003e"
April 9, 2012
MongoDB的安全和授权机制
"\u003cp\u003e先把官方文档的地址贴上来,所有的内容都来自这里:\u003c/p\u003e\n\u003cp\u003e最近项目需要mongodb,简单试了下,一直都没找到安全验证的机制,在linux下很简单就用mongo命令登进去了,也没有指定用户名和密码,也没有host和port,直接就进去了。当时还感觉蛮方便的,但是事后想想,完全没有安全机制和验证的,还是有点不放心啊。后来仔细看了下文档,原来还是有的,只是不太好找而已。\u003c/p\u003e\n\u003cp\u003e官方文档的说法是:目前mongodb的安全机制还是比较简陋的,主要是表现在权限方面,一个用户只要被授权了,那么他就直接拥有了全部的读写权限。mongodb也可以创建只读用户,只有读取的权限。\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e授权需求的开启\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e默认的mongodb进程启动之后是不需要授权验证的,需要手动打开,做法是在启动命令中添加–auth参数。\u003c/p\u003e\n\u003cp\u003edebian下的默认启动参数是:\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e/usr/bin/mongod –dbpath /var/lib/mongodb –logpath /var/log/mongodb/mongodb.log –config /etc/mongodb.conf run\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e我们需要做的是编辑/etc/init.d/mongodb, …\u003c/p\u003e"
September 27, 2011
五步优化你的MongoDB
"\u003cp\u003e下面PPT和视频的作者是MongoDB的开发工程师 \u003ca href=\"http://jaredrosoff.com/\"\u003eJared Rosoff\u003c/a\u003e,他从下面几个方面对MongoDB的几个优化点进行了讲解和描述。这些优化实际上也适用于很多其它的数据库。\u003c/p\u003e\n\u003ch3 id=\"1查询优化\"\u003e1.查询优化\u003c/h3\u003e\n\u003cp\u003e确认你的查询是否充分利用到了索引,用explain命令查看一下查询执行的情况,添加必要的索引,避免扫表操作。\u003c/p\u003e\n\u003ch3 id=\"2搞清你的热数据大小\"\u003e2.搞清你的热数据大小\u003c/h3\u003e\n\u003cp\u003e可能你的数据集非常大,但是这并不那么重要,重要的是你的热数据集有多大,你经常访问的数据有多大(包括经常访问的数据和所有索引数据)。使用MongoDB,你最好保证你的热数据在你机器的内存大小之下,保证内存能容纳所有热数据。\u003c/p\u003e\n\u003ch3 id=\"3选择正确的文件系统\"\u003e3.选择正确的文件系统\u003c/h3\u003e\n\u003cp\u003eMongoDB的数据文件是采用的预分配模式,并且在Replication里面,Master和Replica Sets的非Arbiter节点都是会预先创建足够的空文件用以存储操作日志。这些文件分配操作在一些文件系统上可能会非常慢,导致进程被Block。所 以我们应该选择那些空间分配快速的文件系统。这里的结论是尽量不要用ext3,用ext4或者xfs。\u003c/p\u003e\n\u003ch3 id=\"4选择合适的硬盘\"\u003e4.选择合适的硬盘\u003c/h3\u003e\n\u003cp\u003e这里的选择包括了对磁盘RAID的选择,也包括了磁盘 …\u003c/p\u003e"
July 28, 2011
mongodb中实现自定义自增ID
"\u003cp\u003ePHP代码:\u003c/p\u003e\n\u003cpre tabindex=\"0\"\u003e\u003ccode\u003efunction get_autoincre_id($name, $db){\n\t$update = array(\u0026#39;$inc\u0026#39;=\u0026gt;array(\u0026#34;id\u0026#34;=\u0026gt;1));\n\t$query = array(\u0026#39;table_name\u0026#39; =\u0026gt; $name);\n\t$command = array(\n\t\t\u0026#39;findandmodify\u0026#39;=\u0026gt;\u0026#39;autoincre_system\u0026#39;, \u0026#39;update\u0026#39;=\u0026gt;$update,\n\t\t\u0026#39;query\u0026#39;=\u0026gt;$query, \u0026#39;new\u0026#39;=\u0026gt;true, \u0026#39;upsert\u0026#39;=\u0026gt;true\n\t);\n\t$id = $db-\u0026gt;command($command);\n\treturn $id[\u0026#39;value\u0026#39;][\u0026#39;id\u0026#39;];\n}\n\u003c/code\u003e\u003c/pre\u003e\u003cp\u003e其中上面的table_name可以用来区别多个表,这样可以灵活实现单独的几个表的自增ID值.\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e$conn = new Mongo(); …\u003c/p\u003e\u003c/blockquote\u003e"
July 27, 2011
MongoDB的ObjectId
"\u003cp\u003e前段时间有个朋友问我,分布式主键生成策略在我们这边是怎么实现的,当时我给的答案是sequence,当然这在不高并发的情况下是没有任何问题,实际上,我们的主键生成是可控的,但如果是在分布式高并发的情况下,那肯定是有问题的。\u003c/p\u003e\n\u003cp\u003e突然想起mongodb的objectid,记得以前看过文档,objectid是一种轻量型的,不同的机器都能用全局唯一的同种方法轻量的生成它,而不是采用传统的自增的主键策略,因为在多台服务器上同步自动增加主键既费力又费时,不得不佩服,mongodb从开始设计就被定义为分布式数据库。\u003c/p\u003e\n\u003cp\u003e下面深入一点来翻翻这个Objectid的底细,在mongodb集合中的每个document中都必须有一个”_id”建,这个键的值可以是任何类型的,在默认的情况下是个Objectid对象。\u003c/p\u003e\n\u003cp\u003e当我们让一个collection中插入一条不带_id的记录,系统会自动地生成一个_id的key\u003c/p\u003e\n\u003cblockquote\u003e\n\u003c/blockquote\u003e\n\u003cblockquote\u003e\n\u003cblockquote\u003e\n\u003cp\u003e db.t_test.insert({“name”:”cyz”})\u003c/p\u003e\u003c/blockquote\u003e\u003c/blockquote\u003e\n\u003cblockquote\u003e\n\u003cp\u003e db.t_test.findOne({“name”:”cyz”})\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e{ “_id” : …\u003c/p\u003e\u003c/blockquote\u003e\u003c/blockquote\u003e"
June 24, 2011
Mongodb相关学习资料
"\u003cp\u003e\u003ca href=\"/wp-content/uploads/2011/06/Mongo_share.ppt\"\u003eMongo资料分享.ppt\u003c/a\u003e \u003ca href=\"/wp-content/uploads/2011/06/01-MongoDB.ppt\"\u003e认识MongoDB.ppt\u003c/a\u003e \u003ca href=\"/wp-content/uploads/2011/06/MongoDB222.ppt\"\u003eMongoDB技术交流.ppt\u003c/a\u003e \u003ca href=\"/wp-content/uploads/2011/06/SQL-to-MongoDB.pdf\"\u003eSQL-to-MongoDB.pdf\u003c/a\u003e \u003ca href=\"http://blog.nosqlfan.com/html/1595.html\"\u003eQCon北京2011大会之:MongoDB开发应用实践\u003c/a\u003e \u003ca href=\"http://www.mysqlops.com/2011/06/13/nosql-cassandra-architecture.html\"\u003eNoSQL应用场景及Cassandra架构分析\u003c/a\u003e \u003ca href=\"/wp-content/uploads/2011/06/MongoDB-Tools.rar\"\u003eWindows下MongoDB管理工具(启用和服务)\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://blog.haohtml.com/wp-content/uploads/2011/06/mongodb_insert.bmp\"\u003e\u003cimg src=\"http://blog.haohtml.com/wp-content/uploads/2011/06/mongodb_insert.bmp\" alt=\"\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://blog.haohtml.com/wp-content/uploads/2011/06/mongodb_objectid.jpg\"\u003e\u003cimg src=\"http://blog.haohtml.com/wp-content/uploads/2011/06/mongodb_objectid.jpg\" alt=\"\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://blog.haohtml.com/wp-content/uploads/2011/06/mongodb_field.bmp\"\u003e\u003cimg src=\"http://blog.haohtml.com/wp-content/uploads/2011/06/mongodb_field.bmp\" alt=\"\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://blog.haohtml.com/wp-content/uploads/2011/06/mongodb_query.bmp\"\u003e\u003cimg src=\"http://blog.haohtml.com/wp-content/uploads/2011/06/mongodb_query.bmp\" alt=\"\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://blog.haohtml.com/wp-content/uploads/2011/06/mongodb_in_count_or.bmp\"\u003e\u003cimg src=\"http://blog.haohtml.com/wp-content/uploads/2011/06/mongodb_in_count_or.bmp\" alt=\"\"\u003e\u003c/a\u003e\u003ca href=\"http://blog.haohtml.com/wp-content/uploads/2011/06/mongodb_index.bmp\"\u003e\u003cimg src=\"http://blog.haohtml.com/wp-content/uploads/2011/06/mongodb_index.bmp\" alt=\"\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://blog.haohtml.com/wp-content/uploads/2011/06/mongodb_update.bmp\"\u003e\u003cimg src=\"http://blog.haohtml.com/wp-content/uploads/2011/06/mongodb_update.bmp\" alt=\"\"\u003e\u003c/a\u003e\u003ca href=\"http://blog.haohtml.com/wp-content/uploads/2011/06/mongodb_aggregation.bmp\"\u003e\u003cimg src=\"http://blog.haohtml.com/wp-content/uploads/2011/06/mongodb_aggregation.bmp\" alt=\"\"\u003e\u003c/a\u003e\u003ca href=\"http://blog.haohtml.com/wp-content/uploads/2011/06/mongodb_datetype.jpg\"\u003e\u003cimg src=\"http://blog.haohtml.com/wp-content/uploads/2011/06/mongodb_datetype.jpg\" alt=\"\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://www.cnblogs.com/hoojo/archive/2011/06/01/2066426.html\"\u003emongoDB 入门指南、示例\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eNoSQl存储模型\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://blog.haohtml.com/wp-content/uploads/2011/06/nosql-model.png\"\u003e\u003cimg src=\"http://blog.haohtml.com/wp-content/uploads/2011/06/nosql-model.png\" alt=\"\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eMongo与Mysql语法对应关系图\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://blog.haohtml.com/wp-content/uploads/2011/06/SQL-to-MongoDB.png\"\u003e\u003cimg src=\"http://blog.haohtml.com/wp-content/uploads/2011/06/SQL-to-MongoDB.png\" alt=\"\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"http://blog.haohtml.com/wp-content/uploads/2011/06/rdbms-mongodb.jpg\"\u003e\u003cimg src=\"http://blog.haohtml.com/wp-content/uploads/2011/06/rdbms-mongodb.jpg\" alt=\"\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e数据库\u003c/p\u003e\n\u003cp\u003e表\u003c/p\u003e\n\u003cp\u003e行\u003c/p\u003e\n\u003cp\u003e写入\u003c/p\u003e\n\u003cp\u003e查询\u003c/p\u003e\n\u003cp\u003eMongoDb\u003c/p\u003e\n\u003cp\u003edatabase\u003c/p\u003e\n\u003cp\u003eCollection\u003c/p\u003e\n\u003cp\u003eDocument\u003c/p\u003e\n\u003cp\u003einsert into blog.users values(“user1”,”23))===========\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003euse blogswitched to db blog\u0026gt; u = { name:”user1″, age:23 }\u003c/p\u003e\u003c/blockquote\u003e\n\u003cblockquote\u003e\n\u003cp\u003edb.users.insert(u)\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e主要用到的查询函数式 find() 和 findOne(),前者返回一个迭代器 cursor,后者返回单个文档。\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003edb.users.find({name:”user1″}){\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e“_id” : …\u003c/p\u003e"
June 24, 2011
MongoDB Linux下的安装和启动
"\u003cp\u003e这里用的是64位版本.使用时请检查相应操作系统的版本是32位还是64位.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e1\u0026gt;设置mongoDB目录\u003c/strong\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003ecd /home/apps\nmkdir /home/apps\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e\u003cstrong\u003e2\u0026gt;下载mongodb\u003c/strong\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003ewget \u003ca href=\"http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-1.6.3.tgz\"\u003ehttp://fastdl.mongodb.org/linux/mongodb-linux-x86_64-1.6.3.tgz\u003c/a\u003e\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e\u003cstrong\u003e3\u0026gt;解压缩文件\u003c/strong\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003etar xzf mongodb-linux-x86_64-1.6.3.tgz\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e\u003cstrong\u003e4\u0026gt;启动服务\u003c/strong\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e./mongodb-linux-x86_64-1.6.3/bin/mongod -dbpath=/data/mongodb/db -logpath=/data/mongodb/log\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e\u003cstrong\u003e5\u0026gt;将mongoDB服务加入随机启动\u003c/strong\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003evi /etc/rc.local\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e使用vi编辑器打开配置文件,并在其中加入下面一行代码\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e/home/apps/mongodb/bin/mongod –dbpath /data/mongodb/db –port 27017 –logpath /data/mongodb/log –logappend …\u003c/p\u003e\u003c/blockquote\u003e"
September 26, 2010
centos 5.4 下面安装mongodb服务端和php客户端扩展…
"\u003cp\u003e\u003cstrong\u003e一、安装服务端\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e1.下载MongoDB\u003c/p\u003e\n\u003cp\u003e我下载的是1.6的版本\u003c/p\u003e\n\u003cp\u003e2.解压并把解压包bin目录中的文件全部移到/usr/local/bin目录下面\u003c/p\u003e\n\u003cp\u003e3.运行mongo的服务器端程序\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e/usr/local/bin/mongod –port \u0026lt;端口\u0026gt; –bind_ip \u0026lt;本机IP\u0026gt; –dbpath \u0026lt;数据库文件存放的位置\u0026gt;\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e如果要求开机就启动就在\u003c/p\u003e\n\u003cp\u003e/usr/local/etc/rc.local中加入下面一行内容\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eusr/local/bin/mongod –port \u0026lt;端口\u0026gt; –bind_ip \u0026lt;本机IP\u0026gt; –dbpath \u0026lt;数据库文件存放的位置\u0026gt; \u0026gt;/dev/null \u0026amp;\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e4.测试安装是否成功\u003c/p\u003e\n\u003cp\u003e运行指令\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e#/usr/local/bin/mongo –port 4312 –host 127.0.0.1\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003e显示\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eMongoDB shell version: 1.6.0\u003c/p\u003e\n\u003cp\u003econnecting to: 127.0.0.1:4312/test\u003c/p\u003e\u003c/blockquote\u003e\n\u003cblockquote\u003e\n\u003cp\u003ehelp\u003c/p\u003e\u003c/blockquote\u003e\n\u003cp\u003edb.help() …\u003c/p\u003e"
September 26, 2010
MongoDB 快速入门及windows平台下的mongodb安装教程
"\u003cp\u003e官方教程(for windows):\u003c/p\u003e\n\u003cp\u003e对 MongoDb 文档数据库感兴趣,要安装认识下。\u003c/p\u003e\n\u003cp\u003e到官方下载 win 版 \u003ca href=\"http://www.mongodb.org/display/DOCS/Downloads\"\u003ehttp://www.mongodb.org/display/DOCS/Downloads\u003c/a\u003e 目前最新稳定版是 1.2.4。解压到 f:/sofr/mongodb-win32-i386-1.2.4。\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e1.启动 mongod 服务端\u003c/strong\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eF:\\soft\\mongodb\u0026gt;bin\\mongod.exe –dbpath=f:/mongodb\nMon Mar 08 11:13:17 Mongo DB : starting : pid = 0 port = 27017 dbpath = f:/mongodb master = 0 slave\n= 0 32-bit\u003c/p\u003e\n\u003cp\u003e** NOTE: when using MongoDB 32 bit, you are limited to about 2 gigabytes of data\n** see \u003ca href=\"http://blog.mongodb.org/post/137788967/32-bit-limitations\"\u003ehttp://blog.mongodb.org/post/137788967/32-bit-limitations\u003c/a\u003e for more\u003c/p\u003e\n\u003cp\u003eMon Mar …\u003c/p\u003e\u003c/blockquote\u003e"
September 26, 2010
PHP操作MongoDB
"\u003cp\u003e\u003cstrong\u003e一、MongoDB简介\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eMongoDB (名称来自”humongous”) 是一个可扩展的、高性能、开源、模式自由、面向文档的数据库,集文档数据库、键值对存储和关系型数据库的优点于一身。官方站点: \u003ca href=\"http://www.mongodb.org/\"\u003ehttp://www.mongodb.org/\u003c/a\u003e,MongoDB特点:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e面向文档存储(类JSON数据模式简单而强大)\u003c/li\u003e\n\u003cli\u003e动态查询\u003c/li\u003e\n\u003cli\u003e全索引支持,扩展到内部对象和内嵌数组\u003c/li\u003e\n\u003cli\u003e查询记录分析\u003c/li\u003e\n\u003cli\u003e快速,就地更新\u003c/li\u003e\n\u003cli\u003e高效存储二进制大对象 (比如照片和视频)\u003c/li\u003e\n\u003cli\u003e复制和故障切换支持\u003c/li\u003e\n\u003cli\u003eAuto-Sharding自动分片支持云级扩展性\u003c/li\u003e\n\u003cli\u003eMapReduce 支持复杂聚合\u003c/li\u003e\n\u003cli\u003e商业支持,培训和咨询\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e二、安装MongoDB\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003e安装MongoDB非常的简单,仅需下载压缩包解压运行命令即可,下载地址: \u003ca href=\"http://www.mongodb.org/downloads\"\u003ehttp://www.mongodb.org/downloads\u003c/a\u003e,本文为windows平台,MongoDB运行命令:\u0026gt;bin/mongod。提示:首先要创建存储数据的文件夹,MongoDB 默认存储数据目录为 /data/db/ (或者 c:datadb),当然你也可以修改成不同目录,只需要指定 –dbpath 参数,eg: …\u003c/p\u003e"
September 26, 2010
MongoDB 介绍,安装
"\u003cp\u003e这是MongoDB的系列学习笔记的第一篇,主要介绍什么是非关系型数据库MongoDB,如何下载,去哪儿下载,又该怎么正确的安装等一系列问题。\u003c/p\u003e\n\u003ch2 id=\"一前言\"\u003e一、前言\u003c/h2\u003e\n\u003cp\u003e最近开始学习非关系型数据库MongoDB,却在博客园上找不到比较系统的教程,很多资料都要去查阅英文网站,效率比较低下。本人不才,借着自学的机会把心得体会都记录下来,方便感兴趣的童鞋分享讨论。部分资源出自其他博客,旨将零散知识点集中到一起,如果有侵犯您的权利,请联系[email protected]。大部分内容均系原创,欢迎大家转载分享,但转载的同时别忘了注明作者和原文链接哦。\u003c/p\u003e\n\u003ch2 id=\"二mongodb简介\"\u003e二、MongoDB简介\u003c/h2\u003e\n\u003cp\u003eMongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSql数据库中比较热门的一种。它在许多场景下可用于替代传统的关系型数据库或键/值存储方式。Mongo使用C++开发。Mongo的官方网站地址是:http://www.mongodb.org/,读者可以在此获得更详细的信息。\n小插曲:什么是NoSql?\u003c/p\u003e\n\u003cp\u003eNoSql,全称是 Not Only Sql,指的是非关系型的数据库。下一代数据库主要解决几个要点:非关系型的、分布式的、开源的、 …\u003c/p\u003e"