您现在的位置是:网站首页> 编程资料编程资料
MongoDB常用命令小结_MongoDB_
                     2023-05-27
                483人已围观
                
                2023-05-27
                483人已围观
            
简介 MongoDB常用命令小结_MongoDB_
MongoDB常用命令: 
超级用户相关:
 use admin 
 #增加或修改用户密码 
 db.addUser(ixigua,'pwd') 
 #查看用户列表 
 db.system.users.find() 
 #用户认证 
 db.auth(ixigua,'pwd') 
 #删除用户 
 db.removeUser('mongodb') 
 #查看所有用户 
 show users 
 #查看所有数据库 
 show dbs 
 #查看所有的collection 
 show collections 
 #查看各collection的状态 
 db.printCollectionStats() 
 #查看主从复制状态 
 db.printReplicationInfo() 
 #修复数据库 
 db.repairDatabase() 
 #设置记录profiling,0=off 1=slow 2=all 
 db.setProfilingLevel(1) 
 #查看profiling 
 show profile 
 #拷贝数据库 
 db.copyDatabase('mail_addr','mail_addr_tmp') 
 #删除collection 
 db.mail_addr.drop() 
 #删除当前的数据库 
 db.dropDatabase() 
客户端连接:
 /usr/local/mongodb/bin/mongo 8.8.88/ixigualib -u ixigua -p 'pwd' 
增删改: 
#存储嵌套的对象 
 db.foo.save({'name':'ysz','address':{'city':'beijing','post':100096},'phone':[138,139]}) 
 #存储数组对象 
 db.user_addr.save({'Uid':'yushunzhi@sohu.com','Al':['test-1@sohu.com','test-2@sohu.com']}) 
 #根据query条件修改,如果不存在则插入,允许修改多条记录 
 db.foo.update({'yy':5},{'$set':{'xx':2}},upsert=true,multi=true) 
 #删除yy=5的记录 
 db.foo.remove({'yy':5}) 
 #删除所有的记录 
 db.foo.remove() 
索引: 
#增加索引:1(ascending),-1(descending) 
 db.things.ensureIndex({firstname: 1, lastname: 1}, {unique: true}); 
 #索引子对象 
 db.user_addr.ensureIndex({'Al.Em': 1}) 
 #查看索引信息 
 db.deliver_status.getIndexes() 
 db.deliver_status.getIndexKeys() 
 #根据索引名删除索引 
 db.user_addr.dropIndex('Al.Em_1') 
查询: 
#查找所有 
 db.foo.find() 
 #查找一条记录 
 db.foo.findOne() 
 #根据条件检索10条记录 
 db.foo.find({'msg':'Hello 1'}).limit(10) 
 #sort排序 
 db.deliver_status.find({'From':'ixigua@sina.com'}).sort({'Dt',-1}) 
 db.deliver_status.find().sort({'Ct':-1}).limit(1) 
 #count操作 
 db.user_addr.count() 
 #distinct操作 
 db.foo.distinct('msg') 
 #>操作 
 db.foo.find({"timestamp": {"$gte" : 2}}) 
 #子对象的查找 
 db.foo.find({'address.city':'beijing'}) 
管理:
 #查看collection数据的大小 
 db.deliver_status.dataSize() 
 #查看colleciont状态 
 db.deliver_status.stats() 
 #查询所有索引的大小 
 db.deliver_status.totalIndexSize() 
 #查看当前所使用的数据库 
 db 
 作者 mahout
以下是其他网友的补充:
库操作show dbs 查看系统中的数据库列表
 注:数据库中必须有内容才会显示
 db = db.getSiblingDB("<数据库名>")
 or
 use <数据库名> 
 切换当前数据库
 注:如果数据库不存在,则创建数据库
 任何一种方法都是可以的,并把db值设置为指定的数据库,然后可以使用db来管理新的当前数据库。
  
 db.dropDatabase() 删除当前数据库
 注:删除当前数据库,然后在不改变当前数据库的情况下使用句柄创建一个集合,则被删的数据库会被重新创建。
  
 db.copyDatabase("<当前数据库名>", "<备份库名>", [hostname])
 复制数据库,创建除名称外一模一样的数据库
 注:可选的hostname参数指定当前库MongDB服务器主机名。
  
 db 显示当前数据库
集合操作
 show collections 查看当前数据库中包含的集合的名单
  
 db.createCollection("<集合名>", {
 注:参数二可选对象
 属性          说明
 capped         布尔,如果为true,表示该集合是一个封顶集合,它不会增长到比size属性指定最大规模更大。默认:false
 autoIndexID     布尔,如果为true,表明自动为添加到集合的每个文档创建一个_id字段并实现该字段上索引。这对封顶集合应该是false。默认true
 size          字节单位大小,用于封顶集合。最旧的文件被删除,以腾出空间给新文件
 max         在封顶集合中允许的最大文档数。最旧的文件被删除,以腾出空间给新文件
db.<集合名>.drop()
 or
 coll = db.getCollection("<集合名>")
 coll.drop() 删除集合
  
 db.<集合名>.find()
 or
 coll = db.getCollection("<集合名>")
 coll.find(query) 在集合中查看文档
 注:可选query参数指定包含字段和值的查询文档与集合中的文档匹配,并返回匹配内容。例:coll.find({speed:"120mph"})
  
 db.<集合名>.insert({}) 
 or
 db.<集合名>.save({})
 在集合中插入文档数据(如果集合不存在会被创建,save也是)
 将同类数据视为一个集合
 集合中数据具体相似的属性
 集合是一个容器,内部可放置N多数据
 可以对这些数据进行筛选、排序
 db.<集合名>.remove({筛选条件},false)
 从集合中删除文档 参数1:筛选条件。参数2:可选参数,是否单行删除,默认false。
  
 db.<集合名>.save({ "_id" : ObjectId("57e26b294a655f35e13d6f5d"), "name" : "hung", "age" : 18})
 or
 db.<集合名>.update( {筛选条件}, {$set:{"name":"jin","up":true}},
 {upsert:true,multi:true}) 更新集合中的文档
 参数一:更新文档的条件
 参数二:更新时使用的更新运算符,以及更新属性
 常用运算符:$inc递归该字段值。$set设置字段值。$push将一个条目推送数组。$rename重命名字段。等··
 参数三:可选,两个属性。multi(匹配到的所有文档更新,默认false只更新第一条)和upsert(若没有找到匹配项,创建一个,默认false不创建),布尔。
 *******************************************************************
 db.<集合名>.pretty() 整齐的显示查询文档
 db.<集合名>.find().sort({属性:1/-1}) 按指定的属性排序
 1是正序,-1:倒序
 db.<集合名>.find().limit(n) 显示前n条数据
 db.<集合名>.find().skip(n) 跳过前n条数据
 条件查找
 db.<集合名>.find({属性:value}) 属性==值
 db.<集合名>.find({属性:{运算符:value}})
 运算符:
 $lt       小于
 $lte     小于等于
 $gt      大于
 $gte    大于等于
 $ne     不等于
 对同一属性使用两个运算符
 db.<集合名>.find({ 属性: { 运算符1:value, 运算符2:value } })
 如:db.<集合名>.find({ age: { $gt: 6, $lt: 16 } })
 对不同属性同时限定条件(两个条件同时成立)
 db.<集合名>.find( {属性1: { 运算符:value }, 属性2: { 运算符:value }})
 或条件
 db.<集合名>.find({
 $or: [
 {属性: value},
 {属性: value},
 {属性: value}
 ]
 })
 使用函数筛选数据
 db.<集合名>.find({
 $where: function(){
 return true/false
 }
 })
- MongoDB常用操作命令大全
- mongodb与mysql命令详细对比
- Ubuntu系统中安装MongoDB及其启动命令mongod的教程
- MongoDB入门教程(包含安装、常用命令、相关概念、使用技巧、常见操作等)
- MongoDB使用mongoexport和mongoimport命令,批量导出和导入JSON数据到同一张表的实例
- Mongodb启动命令参数中文说明
- mongodb数据库的6个安全设置命令
- mongodb 命令行下及php中insert数据详解
- 详解MongoDB管理命令
- Ubuntu下安装PHP的mongodb扩展操作命令
- MongoDB中的主从同步配置和mongod相关启动命令讲解
- MongoDB使用自带的命令行工具进行备份和恢复的教程
- MongoDB最基本命令速查笔记
- MongoDB Shell 命令实例总结【进阶篇】
- Mongodb 启动命令mongod参数说明(中文翻译)
- mongodb监控工具mongostat的使用及命令详解
- MongoDB的基本安装与管理命令脚本总结
- MongoDB常用数据库命令大全
相关内容
- MongoDB整库备份与还原以及单个collection备份、恢复方法_MongoDB_
- MongoDB为用户设置访问权限_MongoDB_
- MongoDB 快速入门_MongoDB_
- MongoDB 语法使用小结_MongoDB_
- mongodb在windows下的安装步骤分享_MongoDB_
- MySQL和MongoDB设计实例对比分析_MongoDB_
- MongoDB入门教程之C#驱动操作实例_MongoDB_
- MongoDB入门教程之常用的运维技术介绍_MongoDB_
- MongoDB db.serverStatus()输出内容中文注释_MongoDB_
- MongoDB入门教程之分片技术详解_MongoDB_
 
                                
                                                         
                                
                                                         
                                
                                                         
 
    