mongodb 常用的命令

对数据库的操作,以及登录

1 进入数据库

  1. use admin

2 增加或修改密码

  1. db.addUser('wsc', '123')

3查看用户列表

  1. db.system.users.find()

4 #用户认证

  1. db.auth('wsc', 123)

5 #删除用户

  1. db.removeUser('wsc')

6 #查看所有用户

  1. show users

7 #查看所有数据库

  1. show dbs

8 #查看所有的collection集合

  1. show collections

9 #查看各个collection的状态

  1. db.printCollectionStats()

10 #查看主从复制状态

  1. db.repairDatabase()

11 #修复数据库

  1. db.repairDatabase()

12 #设置profiling,0:off 1:slow 2 all

  1. db.setProfilingLevel(1)

13 #查看profiling

  1. show profiling

14 #拷贝数据库

  1. db.copyDatabase('wsc', 'wsc copy')

15 #删除集合collection

  1. db.wsc.drop()

16 #删除当前数据库

  1. db.dropDatabase()

mongodb的增删改查

1 #存储嵌套的对象

  1. db.foo.save(
  2. {
  3. name’:wsc,
  4. age’:25,’address’:
  5. {
  6. city’:’shnaghai’,
  7. Province’:’shnaghai
  8. }
  9. }
  10. )

2#存储数组对象

  1. db.foo.save(
  2. {
  3. name’:wsc,
  4. age’:25,
  5. address’:
  6. [
  7. anhui Province’,
  8. anhui Province
  9. ]
  10. }
  11. )

3 #根据query条件修改,如果不存在则插入,允许修改多条记录

  1. db.foo.update(
  2. {
  3. age’:’25
  4. },
  5. {
  6. $set’:
  7. {
  8. name’:’xingoo
  9. }
  10. },
  11. upsert=true,
  12. multi=true
  13. )

4 #删除yy=5的记录

  1. db.foo.remove({'name':'wsc'})

5 #删除所有的记录

  1. db.foo.remove()

索引

1 #增加索引:1 asc -1 desc

  1. db.foo.ensureIndex(
  2. {
  3. firstname:1,
  4. lastname:-1
  5. },
  6. {
  7. unieap:true
  8. }
  9. )

2 #索引子对象

  1. db.foo.ensureIndex({‘Al.Em’:!})

3 #查看索引信息

  1. db.foo.getIndexes()
  2. db.foo.getIndexKeys()

4 #根据索引名删除索引

  1. db.foo.dropIndex(‘Al.Em_1’)

查询,利用条件操作符进行查询,并和sql语句进行对比

条件操作符

  1. 1 gt ---- >
  2. 2 $lt ---- <
  3. 3 $gte ---- >=
  4. 4 $lte ---- <=
  5. 5 $ne ---- != 、<>
  6. 6 $in ---- in
  7. 7 $nin ---- not in
  8. 8 $all ---- all
  9. 9 $or ---- or
  10. 10 $not ---- 反匹配

1 查询所有记录

  1. db.foo.find() --- select * from foo

2 查询某列非重复的记录

  1. db.foo.distinct('wsc') ---- select distinct name from foo

3 查询age = 22的记录

  1. db.foo.find({"age":22) ----- select * from foo where age = 22

4 查询age > 22的记录

  1. db.foo.find({age:{$gt:22}}) ---- select * from foo where age > 22

5 查询age < 22 的记录

  1. db.foo.find({age:{$lt:22}}) ---- select * from foo where age < 22

6 查询age <= 22 的记录

  1. db.foo.find({age:{$lte:22}}) ---- select * from foo where age <= 22

7 查询age => 22 且 age <= 26 的记录

  1. db.foo.find({age:{$gte:22,$lte:26}}) ---- select * from foo where age => 22 and age <= 26

8 #查询name中包含wsc的数据

  1. db.foo.find({name:/wsc/} ---- select * from foo where name like '%wsc%'

9 #查询name中以wsc开头的数据

  1. db.foo.find({name:/^wsc/}) ---- select * from foo where name like 'wsc%'

10 #查询指定列name、age的数据

  1. db.foo.find({}, {name:1, age1}) ---- select name , age from foo

11 #查询制定列name、age数据,并且age > 22

  1. db.foo.find({age:{$lt:22}}, {name:1, age1}) ---- select name , age from foo where age > 22

12 #按照年龄排序

  1. db.foo.find().sort({age:1}) 升序
  2. db.foo.find().sort({age:-1}) 降序

13 #查询name=wsc .age=25的数据

  1. db.foo.find({name:'wsc', age25}) ---- select * from foo where name = 'wsc' and age = '25'

14#查询前5条数据

  1. db.foo.find().limit(5) ---- select top 5 from fo0

15 #查询10条以后的数据

  1. db.foo.find().skip(10) ---- select * from foo where id not in (select top 10 from foo)

16 #查询在5-10之间的数据

  1. db.foo.find().limit(10).skip(5)

17 #or与查询

  1. db.foo.find({$or:[{age:22},{age:25}]}) ---- select * from foo where age = 22 or age = 25
18 #查询第一条数据
  1. db.foo.findOne()
  2. db.foo.find.limit(1) ---- select top 1 * from foo

19 #查询某个结果集的记录条数

  1. db.foo.find({age:{$gte:25}}).count() ---- select count(*) from where age >= 20

20 #按照某列进行排序(不懂)

  1. db.foo.find({sex:{$exit:true}}).count() ---- select count(sex) from foo

21 #查询age取模10等于0的数据

  1. db.foo.find('this.age%10 == 0')
  2. db.foo.find({age:{$mod:[10,0]}})

22 #匹配所有

  1. db.foo.find({age:{$all:[22,25]}})

23 #查询不匹配name=X*带头的记录

  1. db.foo.find({name:{$not:/^x.*/}})

24 #排除返回age字段

  1. db.foo.find({name:'wsc'},{age:0})

25 #判断字段是否存在

  1. db.foo.find({name:{$exits:true}})

对collection的管理

1 #查看collection数据大小

  1. db.wsc.dataSize()

2 #查看collection状态

  1. db.wsc.stats()

3 #查询所有索引的大小

  1. db.wsc.totalIndexSize()

参考 连接

http://www.100mian.com/mianshi/mongodb/49183.html

mongodb 常用的命令的更多相关文章

  1. MongoDB 常用shell命令汇总

    //指定用户名和密码连接到指定的MongoDB数据库 mongo 192.168.1.200:27017/admin -u user -p password use youDbName 1.Mongo ...

  2. mongodb常用基础命令

    查看当前使用的数据库,也可以直接用dbdb.getName() 显示当前db状态db.stats() 当前db版本 db.version() 查看当前db的链接机器地址db.getMongo() 查看 ...

  3. (转)mongodb常用命令脚本化-自动化运维

    mongodb常用命令脚本化-自动化运维 把一些运维中常用到的mongodb命令写成shell脚本,极大的方便了维护   1 设置副本集   #!/bin/bash#mongodb 进入client ...

  4. mongodb常用命令学习笔记

    mongodb常用命令学习笔记 创建数据库 use DATABASE_NAME eg: use users; 如果数据库不存在,则创建数据库,否则切换到指定数据库.要显示刚刚创建的数据库,需要向数据库 ...

  5. MongoDB常用操作

    (备注: 对于 window, 不需要sudo) 验证成功与否: * 启动服务器: $sudo mongod --dbpath C:\data\db (需要 指明数据库存放的目录) * 打开shell ...

  6. 前端开发小白必学技能—非关系数据库又像关系数据库的MongoDB快速入门命令(2)

    今天给大家道个歉,没有及时更新MongoDB快速入门的下篇,最近有点小忙,在此向博友们致歉.下面我将简单地说一下mongdb的一些基本命令以及我们日常开发过程中的一些问题.mongodb可以为我们提供 ...

  7. 常用 Git 命令清单

    我每天使用 Git ,但是很多命令记不住. 一般来说,日常使用只要记住下图6个命令,就可以了.但是熟练使用,恐怕要记住60-100个命令. 下面是我整理的常用 Git 命令清单.几个专用名词的译名如下 ...

  8. 常用Linux命令收集

    关闭 php-fpm: ps -ef | grep php-fpm  或    ps aux | grep php-fpm kill -USR2 32253  (对应的进程PID) kill -9 进 ...

  9. 分享一个常用Adb命令

    分享一个常用Adb命令 首先 首先感谢@xuxu的常用adb命令,收益良多,但是已经不能满足于我,所以补充了下. 再者 好久没发帖了,最近论坛老司机们都在讨论/总结,我就用这个干货回报吧. 最后 基于 ...

随机推荐

  1. Git实用记录

    一.git命令名词解释 1.添加/跟踪/暂存:添加到本地索引 git add 文件名 2.提交:提交到本地仓库 git commit -m '注释' 3.推送:将提交到本地仓库的所有更新提交到服务器 ...

  2. 【JBoss】数据库连接配置小结(转)

    数据库驱动位置: %JBOSS_HOME%\server\default\lib目录下. 数据库配置文件位置:JBOSS_HOME\docs\examples\jca\XXXX-ds.xml < ...

  3. Android SharedPreferences基本用法

    使用SharedPreferences SharedPreferences是Android平台上一个轻量级的存储类, 用来保存应用的一些常用配置. SharedPreferences与Editor简介 ...

  4. 关于transient和static的序列化和反序列化

    做java开发有段时间了,最近没那么忙了,抽了点时间看了下java的源码 . 在读源码的时候看到了一个 transient 修饰的变量 ,字面意思是瞬变的.在以前的开发过程中也没用到过这个修饰语,查了 ...

  5. TensorFlow框架(5)之机器学习实践

    1. Iris data set Iris数据集是常用的分类实验数据集,由Fisher, 1936收集整理.Iris也称鸢尾花卉数据集,是一类多重变量分析的数据集.数据集包含150个数据集,分为3类, ...

  6. 线性代数-矩阵-【3】矩阵加减 C和C++实现

    点击这里可以跳转至 [1]矩阵汇总:http://www.cnblogs.com/HongYi-Liang/p/7287369.html [2]矩阵生成:http://www.cnblogs.com/ ...

  7. pomelo 安装 windows 下

    最近一直在捣鼓这个东西,看着个的先记录下发帖时间, pomelo 现在最新版是2.0 的,和之前的版本的启动时有区别的(命令行)的,可以进pomelo官网去看下基本的信息, 在pomelo官方论坛上的 ...

  8. wifi pineapple 外接USB无线网卡桥接外网

    0:选择USB网卡 在没有有线网络的情况下,可以外挂一个usb无线网卡来桥接上网,目前支持3070L.8187L芯片的网卡,反正linux系统都用这些芯片, 免的安装驱动, 我选择的是 WN-722N ...

  9. 原创 :nfs软件服务利用ansible实现一键化部署

    [root@m01 tools]# cat nfspeizhi.shcat >>/etc/exports<<EOF /data 172.16.1.0/24(rw,sync)EO ...

  10. .NET Core2.0 MVC中使用EF访问数据

    使用环境:Win7+VS2017 一.新建一个.NET Core2.0的MVC项目 二.使用Nuget添加EF的依赖 输入命令:Install-Package Microsoft.EntityFram ...