-
创建复合索引查看全部
-
双核CPU编译的好辛苦。。查看全部
-
全文索引使用限制: 1. 每次查询,只能指定一个$text查询 2. $text查询不能出现在$nor查询中 3. 查询中如果包含了$text, hint不再起作用 4. MongoDB全文索引还不支持中文查看全部
-
如何使用全文索引查询: db.articles.find({$text:{$search:"coffee"}}) db.articles.find({$text:{$search:"aa bb cc"}}) 包含aa或bb或cc的数据 db.articles.find({$text:{$search:"aa bb -cc"}}) 同时包含aa、bb且不包含cc的数据 db.articles.find({$text:{$search:"\"aa\" \"bb\" \"cc\""}})同时包含aa、bb、cc的数据(用“”包裹起来,引号需要用反斜杠转义) 全文索引相似度,并用sort排序: $meta操作符:{score:{$meta:"textScore"}} db.imooc_2.find({$text:{$search:"aa bb"}},{score:{$meta:"textScore"}}).sort({score:{$meta:"textScore"}})查看全部
-
不使用全文索引:查找困难,效率低下,需要正则匹配,逐条扫描。 使用全文索引:简单查询即可查询需要的结果。 全文索引创建方法:与创建单键索引,复合索引类似。value换成'text',$**匹配集合下所有 db.articles.ensureIndex({key:"text"}) db.articles.ensureIndex({key_1:"text"},{key_2:"text"}) db.articles.ensureIndex({"$**":"text"})查看全部
-
索引种类: 1、_id索引:大多数集合默认建立的索引, 2.单键索引:最普通的索引,一条记录,形式为:{x:1,y:2,z:3};单键索引不会自动创建 3.多键索引:多键索引与单键索引创建形式相同,区别在于字段的值; 4.复合索引:当我们的查询条件多个时,就需要建立复合索引 5.过期索引:是在一段时间后会过期的索引;在索引过期后,相应的数据会被删除;适合存储用户登录信息等 ①创建方法:db.collection.ensureIndex({time:1},{expireAfterSeconds:10})10为10秒 ②存储在过期索引字段的值必须是指定的时间类型; 必须是ISODate或者ISODate数组,不能使用时间戳,否则不能被自动删除 ③如果指定了ISODate数组,则按照最小的时间进行删除 ④过期索引不能是复合索引 ⑤删除时间是不精确的 删除过程是由后台程序每60s跑一次,而且删除也需要一些时间,所以存在误差 如果设置时间很小,则会在60秒内才可以删除,而不是在规定时间内删除 6.全文索引 7.地理位置索引查看全部
-
过期索引: db.collection.ensuereIndex({time:1},{expireAfterSeconds:10}) 第二个参数,指定过期时间,单位秒查看全部
-
_id索引: 1._id索引是绝大多数集合默认建立的索引。 2.对于每个插入的数据,MongoDB都会自动生成一条唯一的_id字段。 单键索引: 1.单键索引是最普通的索引 2.与_id索引不同,单键索引不会自动创建 如:一条记录,形式为:{x:1,y:2,z:3} db.imooc_2.getIndexes()//查看索引 db.imooc_2.ensureIndex({x:1})//创建索引,索引可以重复创建,若创建已经存在的索引,则会直接返回成功。 db.imooc_2.find()//查看数据 多键索引: 1.多键索引与单键索引创建形式相同,区别在于字段的值。 1)单键索引:值为一个单一的值,如字符串,数字或日期。 2)多键索引:值具有多个记录,如数组。 db.imooc_2.insert({x:[1,2,3,4,5]})//插入一条数组数据 复合索引: 1.当我们的查询条件不止一个时,就需要建立复合索引 db.imooc_collection.ensureIndex({x:1,y:1})查看全部
-
删除数据,不允许不传参数 remove{jsonObject}默认删除所有符合条件的数据 删除当前数据表 db.myCollection.drop() db.imooc_collection.getIndexes()获取所有的索引 db.imooc_collection.ensureIndex({x:1}) 为集合新增x字段索引,1:代表升序,-1:代表降序查看全部
-
mongoDB:update方法有四个参数 第一个参数:查找数据的条件,如{c:1} 表示查找c为1的数据 第二个参数:要更新的数据,如{c:2} 跟新符合条件的数据c为2,默认只更新第一个符合条件的数据。 第三个参数:boolean类型,更新数据不存在时是否创建一条数据,默认为false,设置为true时,自动创建数据。 第四个参数:boolean类型,跟新数据时是否更新所有符合条件的数据,默认为false,只跟新一条符合条件的数据,设置为true时,更新所有符合条件的数据。查看全部
-
show dbs:查看当前存在的数据库 use admin:切换数据库 db.dropDatabase():删除数据库 use imooc:如果数据库不存在,自动创建 db.imooc_collection.insert({x:1}):插入数据 show collections:查看表 db.imooc_collection.find():查询数据 for(i=3;i<100;i++)db.imooc_collection.insert({x:i}):插入97条数据 db.imooc_collection.find().count():进行计数 db.imooc_collection.find().skip(3).limit(2).sort({x:1}) skip(3):过滤掉前三条数据 limit(2):限制返回的条数 sort({x:1}):使用x排序 skip()条件略过多少条,limit()限制返回多少条,sort({x:1})功能为排序,1为正序,-1为负排序 update 至少接收两个参数,一个为查找条件,另一个为新值,如 db.imooc_collection.update({x:1},{x:100}):表示查找x:1的记录,并将其修改为x:100 需要部分更新时,使用$set,如 db.imooc_collection.update({z:100},{$set:{y:99}}) db.myCollection.update(conditionJsonObject,newValueJsonObject,booleanFlag) booleanFlag=true表示,如果更新的记录不存在,则新插入一条,如 db.imooc_collection.update({y:100},{y:999},true),表示将y=100的记录更新为y=999,如果不存在y=100的记录,则新插入一条y=999的一条记录查看全部
-
连接MongoDB服务器方式 1.mongo: 拷贝mongo到bin目录下方便使用:cp ../mongo-r2.6.5/mongo bin/ 执行./bin/mongo --help:查看使用说明 ./bin/mongo 127.0.0.1:12345/test; #出现">"说明连接成功 2.驱动连接 关闭数据库很简单,首先切换到admin数据库才有权限: 方法一: >use admin >db.shutdownServer() 方法二: kill -15 xxx 或者 kill xxx 不能使用-9 tail -f logs/mongdb.log #查看日志 numactl --interleave=all bin/mongod -f conf/mongod.conf #消除警告,NUMA查看全部
-
初始化一个要存储的目录,定义几个需要使用的文件夹,比如: bin: 存放mongod二进制文件,用于启动服务 log:存放mongodb的日志文件 conf:存放配置文件 data:存放数据库文件 ==== 然后复制mongod文件到bin目录,其实这里也不是必须的,然后呢,在conf下创建一个配置文件test.conf: port = 12345#监听的端口 dbpath = data#数据库文件 logpath = log/test.log#日志文件 fork = true#后台运行 ============== 然后启动数据库服务: ./bin/mongod -f conf/test.conf查看全部
-
编译MongoDB文件,执行scons all命令 如果有多个CPU,可以加CPU核数:scons all -j 12 找不到scons命令时 需要安装scons 命令: sudo apt-get install scons 如果编译出错,可以使用二进制文件 1.mongod: mongoDB数据库的执行程序 2.mongo:用来连接mongoDB服务器的客户端,对服务器的所有操作必须用客户端连接后才能进行 3.mongoimport: 用于导入 mongoexport: 用于导出 4.mongodump: 备份数据(二进制文件,不能被直接读取,一般用来做数据的备份) mongorestore: 恢复数据(二进制文件,不能被直接读取,一般用来做数据的恢复) 5.mongooplog: 用来操作日志的回放 oplog:MongoDB复制集中用来记录操作记录的数据集合 6.mongostat: 用来查看mongo服务器的各种状态查看全部
-
scons 编译查看全部
举报
0/150
提交
取消