mongodb 常用的命令
mongodb 常用的命令
对数据库的操作,以及登录
1 进入数据库
use admin
2 增加或修改密码
db.addUser('wsc', '123')
3查看用户列表
db.system.users.find()
4 #用户认证
db.auth('wsc', 123)
5 #删除用户
db.removeUser('wsc')
6 #查看所有用户
show users
7 #查看所有数据库
show dbs
8 #查看所有的collection集合
show collections
9 #查看各个collection的状态
db.printCollectionStats()
10 #查看主从复制状态
db.repairDatabase()
11 #修复数据库
db.repairDatabase()
12 #设置profiling,0:off 1:slow 2 all
db.setProfilingLevel(1)
13 #查看profiling
show profiling
14 #拷贝数据库
db.copyDatabase('wsc', 'wsc copy')
15 #删除集合collection
db.wsc.drop()
16 #删除当前数据库
db.dropDatabase()
mongodb的增删改查
1 #存储嵌套的对象
db.foo.save(
{
‘name’:wsc,
’age’:25,’address’:
{
‘city’:’shnaghai’,
’Province’:’shnaghai’
}
}
)
2#存储数组对象
db.foo.save(
{
‘name’:wsc,
’age’:25,
’address’:
[
‘anhui Province’,
’anhui Province’
]
}
)
3 #根据query条件修改,如果不存在则插入,允许修改多条记录
db.foo.update(
{
‘age’:’25’
},
{
‘$set’:
{
‘name’:’xingoo’
}
},
upsert=true,
multi=true
)
4 #删除yy=5的记录
db.foo.remove({'name':'wsc'})
5 #删除所有的记录
db.foo.remove()
索引
1 #增加索引:1 asc -1 desc
db.foo.ensureIndex(
{
firstname:1,
lastname:-1
},
{
unieap:true
}
)
2 #索引子对象
db.foo.ensureIndex({‘Al.Em’:!})
3 #查看索引信息
db.foo.getIndexes()
db.foo.getIndexKeys()
4 #根据索引名删除索引
db.foo.dropIndex(‘Al.Em_1’)
查询,利用条件操作符进行查询,并和sql语句进行对比
条件操作符
1 gt ---- >
2 $lt ---- <
3 $gte ---- >=
4 $lte ---- <=
5 $ne ---- != 、<>
6 $in ---- in
7 $nin ---- not in
8 $all ---- all
9 $or ---- or
10 $not ---- 反匹配
1 查询所有记录
db.foo.find() --- select * from foo
2 查询某列非重复的记录
db.foo.distinct('wsc') ---- select distinct name from foo
3 查询age = 22的记录
db.foo.find({"age":22) ----- select * from foo where age = 22
4 查询age > 22的记录
db.foo.find({age:{$gt:22}}) ---- select * from foo where age > 22
5 查询age < 22 的记录
db.foo.find({age:{$lt:22}}) ---- select * from foo where age < 22
6 查询age <= 22 的记录
db.foo.find({age:{$lte:22}}) ---- select * from foo where age <= 22
7 查询age => 22 且 age <= 26 的记录
db.foo.find({age:{$gte:22,$lte:26}}) ---- select * from foo where age => 22 and age <= 26
8 #查询name中包含wsc的数据
db.foo.find({name:/wsc/} ---- select * from foo where name like '%wsc%'
9 #查询name中以wsc开头的数据
db.foo.find({name:/^wsc/}) ---- select * from foo where name like 'wsc%'
10 #查询指定列name、age的数据
db.foo.find({}, {name:1, age;1}) ---- select name , age from foo
11 #查询制定列name、age数据,并且age > 22
db.foo.find({age:{$lt:22}}, {name:1, age;1}) ---- select name , age from foo where age > 22
12 #按照年龄排序
db.foo.find().sort({age:1}) 升序
db.foo.find().sort({age:-1}) 降序
13 #查询name=wsc .age=25的数据
db.foo.find({name:'wsc', age:25}) ---- select * from foo where name = 'wsc' and age = '25'
14#查询前5条数据
db.foo.find().limit(5) ---- select top 5 from fo0
15 #查询10条以后的数据
db.foo.find().skip(10) ---- select * from foo where id not in (select top 10 from foo)
16 #查询在5-10之间的数据
db.foo.find().limit(10).skip(5)
17 #or与查询
db.foo.find({$or:[{age:22},{age:25}]}) ---- select * from foo where age = 22 or age = 25
18 #查询第一条数据
db.foo.findOne()
db.foo.find.limit(1) ---- select top 1 * from foo
19 #查询某个结果集的记录条数
db.foo.find({age:{$gte:25}}).count() ---- select count(*) from where age >= 20
20 #按照某列进行排序(不懂)
db.foo.find({sex:{$exit:true}}).count() ---- select count(sex) from foo
21 #查询age取模10等于0的数据
db.foo.find('this.age%10 == 0')
db.foo.find({age:{$mod:[10,0]}})
22 #匹配所有
db.foo.find({age:{$all:[22,25]}})
23 #查询不匹配name=X*带头的记录
db.foo.find({name:{$not:/^x.*/}})
24 #排除返回age字段
db.foo.find({name:'wsc'},{age:0})
25 #判断字段是否存在
db.foo.find({name:{$exits:true}})
对collection的管理
1 #查看collection数据大小
db.wsc.dataSize()
2 #查看collection状态
db.wsc.stats()
3 #查询所有索引的大小
db.wsc.totalIndexSize()
mongodb 常用的命令的更多相关文章
- MongoDB 常用shell命令汇总
//指定用户名和密码连接到指定的MongoDB数据库 mongo 192.168.1.200:27017/admin -u user -p password use youDbName 1.Mongo ...
- mongodb常用基础命令
查看当前使用的数据库,也可以直接用dbdb.getName() 显示当前db状态db.stats() 当前db版本 db.version() 查看当前db的链接机器地址db.getMongo() 查看 ...
- (转)mongodb常用命令脚本化-自动化运维
mongodb常用命令脚本化-自动化运维 把一些运维中常用到的mongodb命令写成shell脚本,极大的方便了维护 1 设置副本集 #!/bin/bash#mongodb 进入client ...
- mongodb常用命令学习笔记
mongodb常用命令学习笔记 创建数据库 use DATABASE_NAME eg: use users; 如果数据库不存在,则创建数据库,否则切换到指定数据库.要显示刚刚创建的数据库,需要向数据库 ...
- MongoDB常用操作
(备注: 对于 window, 不需要sudo) 验证成功与否: * 启动服务器: $sudo mongod --dbpath C:\data\db (需要 指明数据库存放的目录) * 打开shell ...
- 前端开发小白必学技能—非关系数据库又像关系数据库的MongoDB快速入门命令(2)
今天给大家道个歉,没有及时更新MongoDB快速入门的下篇,最近有点小忙,在此向博友们致歉.下面我将简单地说一下mongdb的一些基本命令以及我们日常开发过程中的一些问题.mongodb可以为我们提供 ...
- 常用 Git 命令清单
我每天使用 Git ,但是很多命令记不住. 一般来说,日常使用只要记住下图6个命令,就可以了.但是熟练使用,恐怕要记住60-100个命令. 下面是我整理的常用 Git 命令清单.几个专用名词的译名如下 ...
- 常用Linux命令收集
关闭 php-fpm: ps -ef | grep php-fpm 或 ps aux | grep php-fpm kill -USR2 32253 (对应的进程PID) kill -9 进 ...
- 分享一个常用Adb命令
分享一个常用Adb命令 首先 首先感谢@xuxu的常用adb命令,收益良多,但是已经不能满足于我,所以补充了下. 再者 好久没发帖了,最近论坛老司机们都在讨论/总结,我就用这个干货回报吧. 最后 基于 ...
随机推荐
- GC选择之CMS 并发标记清除
CMS收集器 Concurrent Markup Sweep 并发标记清除 使用了标记-清除算法 与标记-压缩相比,并发阶段会降低吞吐量 算法作用在老年代以及永久区(新生代使用ParNew) -XX: ...
- 后台生成EXCEL文档,自定义列
后台生成EXCEL文档,自定义列 //response输出流处理 //设置编码.类型.文件名 getResponse().reset(); getResponse().setCharacterEnco ...
- Spring框架——批处理(batch)和事务(Transaction)
批处理(batch) 批处理(batch)------------>好比快递员[不能一件一件的送快递] - 批处理指的是一次操作中执行多条SQL语句 - 批处理相比于一次一次执行效率会提高很多 ...
- Nexus私服搭建使用及发布jar包到私服上供团队其他成员使用
1.下载maven解压到指定目录,并配置环境变量 M2_HOME为maven解压目录 2.path中增加 %M2_HOME%\bin, 并确认 mvn -v 正确 3.下载nexus http://w ...
- Servlet中Response对象应用1(输出简单文字、实现文件下载)
通过response对象可以实现很多功能,下面的代码都是在myeclipse上实现过的,整理下路,以备后用. response对象应用1 1向客户端发送简单消息 A利用已经声明的对象,调用其getOu ...
- 框架整合——Spring与MyBatis框架整合
Spring整合MyBatis 1. 整合 Spring [整合目标:在spring的配置文件中配置SqlSessionFactory以及让mybatis用上spring的声明式事务] 1). 加入 ...
- 关于C#开发 windows服务进程
最近在做一个物联网项目,其中有一个模块是需要实现热水工程的自动化补水和回水功能 实现的方式有多种,我选用了VS C#的Windows服务方式. 首先是创建一个windows服务项目(名称随你喜欢的规范 ...
- Ubuntu部署可视化爬虫Portia2.0环境
部署portia环境官方文档给出的方法太过简单,对于初学者来说是很难根据那一两行字成功部署portia环境的.对于部署portia这只可爱的爬虫的过程还是有很多坑的,主要写一篇portia2.0版本的 ...
- Docker 集群环境实现的新方式
近几年来,Docker 作为一个开源的应用容器引擎,深受广大开发者的欢迎.随着 Docker 生态圈的不断建设,应用领域越来越广.云计算,大数据,移动技术的快速发展,加之企业业务需求的不断变化,紧随技 ...
- java_eclipse添加DID实现自动提示
便捷无错开发 对于xml 配置没有自动提示是多么恼火就不用说了,eclipse本身很多都是默认关闭了的,如果开发者不知道的话,就不知道怎么去设置,下面介绍几种自动提示设置的方法: XML:获得提示更好 ...