服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - MongoDB - MongoDB基础命令以及操作示例详解

MongoDB基础命令以及操作示例详解

2020-05-18 15:49鱼大大 MongoDB

Mongodb:是一种NoSQL数据库,下面这篇文章主要给大家介绍了关于MongoDB基础命令以及操作的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

前言

Mongodb是一个非关系型数据库软件(NoSql),以类似json的形式bson存储数据,bson有二进制的json的意思,官方说bson的效率更高,很适合存储类似于对象的数据,这里权当把自己学习的过程记录下来。

关于MongoDB的安装方法给大家推荐下面这几篇文章:

1、Linux下安装MongoDB的实现步骤

2、window下安装配置mongodb的教程图解

3、Mac中mongoDB的安装与卸载步骤详解

好了,下面开始本文的正文:

MongoDB:NoSQL数据库
MongoDB中的重要指示点

1、MongoDB中的三要素

  • 数据库
  • 集合
  • 文档

2、MongoDB中的数据存储是以Bson的形式存储的,Bson是二进制的json,所以看上去记录的形式类似于json数据

3、MongoDB中集合中的数据不同于关系型数据库中的数据,MongoDB中文档结构可以不同,因此扩展性非常好

MongoDB的优点:易扩展、高性能、灵活的数据模型

MongoDB的缺点:数据重复存储,占用空间大

MongoDB启动

命令行(终端)启动命令

  • mongod : 运行服务端
  • mongo: 启动客户端

查看帮助命令,默认端口,日志位置

  • 查看帮助:mongod –help
  • 查看是否启动成功:ps ajx|grep mongod
  • 默认端⼝:27017
  • 日志的位置:/var/log/mongodb/mongod.log

mongodb客户端

  • 启动本地客户端:mongo
  • 查看帮助:mongo –help
  • 退出:exit或者ctrl+c

MongoDB的基础命令

操作数据库命令

查看当前的数据库:db

查看所有的数据库:show dbs /show databases

切换数据库:use db_name删除当前的数据库:db.dropDatabase()

  • 切换到没有的数据库, 添加数据会自动创建

显示当前数据库状态:db.stats()

当前数据库版本:db.version()

查看当前数据库的链接机器地址:db.getMongo()

操作集合的命令

不手动创建集合:

  • 向不存在的集合中第⼀次加⼊数据时, 集合会被创建出来

手动创建结合:

创建用户:db.createUser({user:"laowang",pwd:"123456",roles:[{role:"userAdmin",db:"stu"}]})

  • db.createCollection(name,options)
  • db.createCollection("stu")
  • db.createCollection("sub", { capped : true, size : 10 } )
  • 参数capped: 默认值为false表示不设置上限,值为true表示设置上限
  • 参数size: 当capped值为true时, 需要指定此参数, 表示上限⼤⼩,单位为字节
        档达到上限时, 会将之前的数据覆盖, 最早添加的数据移出, 其余上移, 最后添加在最后一条

显示当前所以用户:show  users

删除用户:db.removeUser("userName")

查看集合: show collections

删除集合: db.集合名称.drop()

mongo中的数据类型

Object ID: ⽂档ID

String: 字符串, 最常⽤, 必须是有效的UTF-8

Boolean: 存储⼀个布尔值, true或false

Integer: 整数可以是32位或64位, 这取决于服务器

Double: 存储浮点值

Arrays: 数组或列表, 多个值存储到⼀个键

Object: ⽤于嵌⼊式的⽂档, 即⼀个值为⼀个⽂档

Null: 存储Null值

Timestamp: 时间戳, 表示从1970-1-1到现在的总秒数

Date: 存储当前⽇期或时间的UNIX时间格式

注意事项:

创建⽇期语句如下 :参数的格式为YYYY-MM-DD每个⽂档都有⼀个属性, 为_id, 保证每个⽂档的唯⼀性

  • new Date('2017-12-20')

可以⾃⼰去设置_id插⼊⽂档,如果没有提供, 那么MongoDB为每个⽂档提供了⼀个独特的_id, 类型: objectID

objectID是⼀个12字节的⼗六进制数(了解):

  • 前4个字节为当前时间戳
  • 接下来3个字节的机器ID
  • 接下来的2个字节中MongoDB的服务进程id
  • 最后3个字节是简单的增量值

插入数据

db.集合名称.insert(document)插⼊⽂档时, 如果不指定_id参数, MongoDB会为⽂档分配⼀个唯⼀的ObjectId类型的_id

  • db.stu.insert({name:'gj',gender:1})
  • db.stu.insert({_id:"20170101",name:'gj',gender:1})

插入单条指定为字典, 插入多条指定为列表

保存

db.集合名称.save(document)

如果⽂档的_id已经存在则修改, 如果⽂档的_id不存在则添加

区别于: insert如果存在直接报错

简单查询:

db.集合名称.find()

更新

语法:  db.集合名称.update(<query> ,<update>,{multi: <boolean>})

  • 参数query:查询条件
  • 参数update:更新操作符
  • 参数multi:可选, 默认是false,表示只更新找到的第⼀条记录, 值为true表示把满⾜条件的⽂档全部更新

举例:注意:"multi update only works with $ operators" 更新全部,必须使用 $set

  • db.stu.update({name:'hr'},{name:'mnc'}) 更新一条,没有更新的字段会丢弃.
  • db.stu.update({name:'hr'},{$set:{name:'hys'}}) 更新一条
  • db.stu.update({},{$set:{gender:0}},{multi:true}) 更新全部

删除

语法:  db.集合名称.remove(<query>,{justOne: <boolean>})

  • 参数query:可选,删除的⽂档的条件
  • 参数justOne:可选, 如果设为true或1, 则只删除⼀条, 默认false, 表示删除多条

总结:

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对服务器之家的支持。

原文链接:http://www.cnblogs.com/longguoliang/p/9501597.html

延伸 · 阅读

精彩推荐
  • MongoDBMongoDB 学习笔记

    MongoDB 学习笔记

    最近在学习MongoDB,小结一下,主要都是一些基础知识,需要的朋友可以参考下 ...

    服务器之家3412020-04-25
  • MongoDBMongoDB分片测试

    MongoDB分片测试

    分片是mongoDB扩展的一种方式。分片分割一个collection并将不同的部分存储在不同的机器上,本文给大家介绍MongoDB分片测试,需要的朋友参考下吧 ...

    我思,故我在5532020-05-05
  • MongoDBMongoDB简单操作示例【连接、增删改查等】

    MongoDB简单操作示例【连接、增删改查等】

    这篇文章主要介绍了MongoDB简单操作,涉及命令行窗口下使用MongoDB进行简单的连接、增删改查等相关操作技巧,需要的朋友可以参考下 ...

    tinyphp2982020-05-23
  • MongoDBMongodb如何开启用户访问控制详解

    Mongodb如何开启用户访问控制详解

    默认启动 MongoDB 服务时没有任何参数,可以对数据库任意操 作,而且可以远程访问数据库,所以推荐开发阶段可以不设置任何参数,但对于生产环境还是要...

    不争5402020-05-10
  • MongoDBMongodb数据库误删后的恢复方法(两种)

    Mongodb数据库误删后的恢复方法(两种)

    本文给大家分享两种方法来实现Mongodb数据库误删后的恢复,每种方法给大家介绍的都非常详细,需要的朋友参考下吧 ...

    fyg05249922020-05-18
  • MongoDBMongo服务重启异常问题的处理方法

    Mongo服务重启异常问题的处理方法

    这篇文章主要给大家介绍了关于Mongo服务重启异常问题的处理方法,这个问题其实还是挺常见的,通过此文学习处理方法,以后遇到了就不会措手不及的,需要的...

    Leafage11842021-08-24
  • MongoDBMongoDB 简单入门教程(安装、基本概念、创建用户)

    MongoDB 简单入门教程(安装、基本概念、创建用户)

    这篇文章主要介绍了MongoDB 简单入门教程(安装、基本概念、创建用户)的相关资料,帮助大家更好的理解和学习使用MongoDB数据库,感兴趣的朋友可以了解下...

    AsiaYe6352021-05-10
  • MongoDB将MongoDB加入到Windows的本地服务项的方法

    将MongoDB加入到Windows的本地服务项的方法

    下面主要针对MongoDB在Windows下加入本地服务项做一些简单的分享。以方便刚接触MongoDB并在Windows环境下进行开发的同学 ...

    MongoDB教程网3012020-04-28