设为首页 收藏本站
查看: 1576|回复: 0

[经验分享] mongodb-命令

[复制链接]

尚未签到

发表于 2015-7-8 05:53:56 | 显示全部楼层 |阅读模式
  MongoDB是一个NoSQL数据库系统,一个数据库可以包含多个集合(Collection),每个集合对应于关系数据库中的表;而每个集合中可以存储一组由列标识的记录,列是可以自由定义的, 非常灵活,由一组列标识的实体的集合对应于关系数据库表中的行。下面通过熟悉MongoDB的基本管理命令,来了解MongoDB提供的DBMS的基本功 能和行为。
MongoDB命令帮助系统
  在安装MongoDB后,启动服务器进程(mongod),可以通过在客户端命令mongo实现对MongoDB的管理和监控。看一下MongoDB的命令帮助系统:

  这是MongoDB最顶层的命令列表,主要告诉我们管理数据库相关的一些抽象的范畴:数据库操作帮助、集合操作帮助、管理帮助。如果你想了解数据库操作更详细的帮助命令,可以直接使用db.help(),如下所示:

  对数据库进行管理和操作的基本命令,可以从上面获取到。如果想要得到更多,而且每个命令的详细用法,可以使用上面列出的db.listCommands()查询。
  另一个比较基础的是对指定数据库的集合进行操作、管理和监控,可以通过查询db.mycoll.help()获取到:

  有关数据库和集合管理的相关命令,是最基础和最常用的,如集合查询、索引操作等。
基本命令及实例
  下面通过实际的例子来演示一些常见的命令:
(一)基本命令
  1、show dbs

显示当前数据库服务器上的数据库

2、use pagedb
切换到指定数据库pagedb的上下文,可以在此上下文中管理pagedb数据库以及其中的集合等

3、show collections
显示数据库中所有的集合(collection)

4、db.serverStatus()  
查看数据库服务器的状态。有时,通过查看数据库服务器的状态,可以判断数据库是否存在问题,如果有问题,如数据损坏,可以及时执行修复。

5、查询指定数据库统计信息
use fragment
db.stats()

查询结果示例如下所示:
显示fragment数据库的统计信息。


6、查询指定数据库包含的集合名称列表
db.getCollectionNames()

(二)基本DDL和DML
1、创建数据库
如果你习惯了关系型数据库,你可能会寻找相关的创建数据库的命令。在MongoDB中,你可以直接通过use dbname来切换到这个数据库上下文下面,系统会自动延迟创建该数据库,例如:

可见,在use指定数据库后,并且向指定其中的一个集合并插入数据后,数据库和集合都被创建了。

2、删除数据库
直接使用db.dropDatabase()即可删除数据库。


3、创建集合
可以使用命令db.createCollection(name, { size : ..., capped : ..., max : ... } )创建集合,示例如下所示:

  4、删除集合
  删除集合,可以执行db.mycoll.drop()。
  5、插入更新记录
  直接使用集合的save方法,如下所示:
  待续....http://blog.iyunv.com/shirdrn/article/details/7105539
  shell命令
  help db.help()                #查看 db 方法
db.mycoll.help()             #查看集合方法
rs.help()                    #查看 replica set 方法
help admin                   #管理员帮助
help connect                 #连接数据库帮助
help keys                    #快捷键帮助
help misc                    #了解 misc  
help mr                      #mapreduce  
show dbs                     #打印本服务器存在的数据库名称列表
show collections             #打印当前数据库的集合列表
show users                   #打印当前数据库的用户
show profile                 #打印 1s 内的 system.profile
show logs                    #打印 logger 名称
show log [name]              #打印内存中最新的一条日志记录,[name] 默认为 'global'
use                 #切换数据库
db.foo.find()                #列出集合 foo 中的对象列表
db.foo.find( { a : 1 } )     #列出集合 foo 中满足条件 a== 1 的对象列表
it                           #查看 find 返回列表的其余部分
DBQuery.shellBatchSize = x   #设置 shell 默认显示的项的个数
exit                         #退出 mongodb shell


  
  
  
  
  
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-84185-1-1.html 上篇帖子: mongoDB django 应用 mongoengine 下篇帖子: MongoDB源码阅读之BSON源码分析
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表