MongoDb-01——Mac上安装MongoDb以及相关的简单命令

这篇具有很好参考价值的文章主要介绍了MongoDb-01——Mac上安装MongoDb以及相关的简单命令。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 下载、安装

1.1 官网下载

  • 官网下载:
    https://www.mongodb.com/try/download/community.
    选择对应的版本下载,如下:
    MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb

1.2 关于安装MongoDB

1.2.1 官方安装文档

  • 关于安装建议参考中文文档,各操作系统的安装都有了
    MongoDB 中文手册.

  • 上面文档可能不是根据最新版本定的,所以,如果想安装最新版本的,可以参考官方英文网站,如下:
    https://www.mongodb.com/docs/manual/tutorial/install-mongodb-on-os-x/.文章来源地址https://www.toymoban.com/news/detail-694441.html

1.2.2 Mac安装详细步骤(使用brew)

  • 我这里也是参考上面安装步骤,使用 brew 进行安装的,具体请看下面步骤。
    关于 brew ,如果没有安装的,请移步下面的文章:
    mac上安装Homebrew的详细介绍包括解决各种问题以及使用Homebrew安装git、svn等软件.
  • 安装步骤:
    • 更新 brew,随自己,可更新可不更新
      brew update
      
    • 创建一个tap仓库
      brew tap mongodb/brew
      
      MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb
    • 安装指定版本的 mongodb-community Server,如果不指定版本,默认好像也是安装最新版本
      brew install mongodb-community@7.0
      
  • 查看是否安装成功
    • 安装之后,通过下面命令查看是否安装上
      brew list
      
      MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb
  • 安装文件说明
    • 除二进制文件外,安装过程还会根据你的Apple硬件在以下指定位置创建以下文件和目录,如下:
      MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb
    • 可以执行以下命令来检查brew将这些文件和目录安装在哪里
      brew --prefix
      
      MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb

2. 启动MongoDB

2.1 官方说明

  • 直接看官网说明:
    MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb

2.2 作为macOS服务运行的相关命令

  • 启动服务:
    brew services stop mongodb-community@7.0
    
  • 查看MongoDB服务是否正在运行
    brew services list
    
    MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb
  • 停止服务:
    brew services stop mongodb-community@7.0
    
  • 查看占用的端口
    • 先查看进程ID
      ps -ef | grep mongodb
      
      MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb
    • 使用 lsof ,根据进程ID查看端口
      lsof -i | grep 24403 
      
      MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb
    • 补:使用 lsof ,根据端口 查 服务和进程
      lsof -i:27017
      
      MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb

2.3 访问

  • 知道端口之后不妨访问试试,当然,访问不通,协议不同,但是可以说明mongodb服务启动了,如下:
    http://127.0.0.1:27017/
    
    MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb

3. 链接并使用mongodb

3.1 链接mongodb

  • 链接命令:
    mongosh
    
    MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb

3.2 简单使用mongodb

3.2.1 简单命令

  • 常用简单命令,如下:
    show dbs   #查看所有数据库
    
    db   # 查看当前数据库
    
    db.getName() #查看当前数据库名称
    
    use dbName   # 切换数据库(注意:有这个数据库,则会选中这个数据库,没有则会创建)
    
    db.version()  # 查看mongodb版本
    
    db.stats()   # 查看数据库状态信息
    
    db.getMongo()  #查看数据库的链接地址
    
    db.dropDatabase()  # 删除数据库
    ……
    
    MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb
  • 关于创建 数据库 和 集合
    use susu_test    # 切换数据库susu_test(注意:有这个数据库,则会选中这个数据库,没有则会创建)
    
    db.createCollection(name, options)    # 创建集合  name:集合名,字符
    db.createCollection('dog')
    
    show collections   # 查看当前数据库所有集合
    
    db.集合名.renameCollection('集合新名')    # 重命名集合
    db.cat.renameCollection('cats')
    
    db.集合名.drop()    # 删除集合
    db.cats.drop()
    
    MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb

3.2.2 简单crud使用(文档命令)

3.2.2.1 插入数据
  • 插入单条数据
    • 语法:
      db.dog.insert({})
      
      db.dog.insertOne({})
      
    • 例子:
      db.dog.insert({dogNum:'A-1001',dogName:'麦兜',dogAge:3,dogKind:'边牧'})
      
      db.dog.insertOne({dogNum:'A-1002',dogName:'泡泡',dogAge:5,dogKind:'柯基'})
      
  • 插入多条数据
    • 语法:
      db.dog.insert([{},{}])
      
    • 例子:
      db.dog.insert([{dogNum:'A-1003',dogName:'大牙',dogAge:2,dogKind:'边牧'},{dogNum:'A-1004',dogName:'闪闪',dogAge:8,dogKind:'秋田'}])
      
  • 如图:
    MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb
    MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb
3.2.2.2 查询数据
3.2.2.2.1 一般查询
  • 语法如下:
    db.dog.find()   # 1.查询所有
    
    db.集合名.find({key:val})   # 2.指定键值对条件查询
    db.dog.find({dogNum:'A-1005'})
    
    db.集合名.find({key:{$in:[value1,value2]}})    # 3.包含,等价于sql中的in查询
    db.dog.find({dogNum:{$in:['A-1005','A-1006']}})
    
    db.集合名.find({key1:val1},{key2:val2}……)  # 4. 多条件查询 同时满足
    db.dog.find({dogKind:'边牧',dogAge:{$lt:3}})  #品种是边牧,并且年龄小于3的
    db.dog.find({$and:[{dogKind:'边牧'},{dogAge:{$lt:3}}]}) #$and 等价于上条写法
    
    db.dog.find({$or:[{dogKind:'边牧'},{dogAge:{$lt:3}}]}) # $or 满足条件之一即可
    
  • 效果如下:
    MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb
    MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb
3.2.2.2.2 模糊查询
  • 语法如下:
    db.集合名.find({key:/val/})   #  1. 模糊查询(包含val的数据),  注意:val 不能用引号
    db.dog.find({dogName:/兜/})
    
    db.集合名.find({ key: /^val/})  # 2.1 查询key中包含val,且以val开头的数据
    db.dog.find({dogName:/^麦/})  # 注意:不加引号
    
    db.dog.find({key:{$regex:'^val'}})  # 2.2 查询key中包含val,且以val开头的数据
    db.dog.find({dogName:{$regex:'^麦'}})  # 注意:加引号
    
    # 同理,查询以XXX结尾的语法类似,两种写法,如下:
    db.dog.find({dogName:/兜$/})
    db.dog.find({dogName:{$regex:'兜$'}})
    
    
  • 效果如下:
    MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb
    MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb
3.2.2.2.3 排序查询
  • 语法:
    db.集合名.find({key:val}).sort({key:1})  # 1 升序,-1 将序
    
    db.dog.find({dogKind:'边牧'}).sort({dogAge:-1}) # 按年龄将序
    
    MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb
3.2.2.2.4 分页查询
  • 语法:
    db.集合名.find({key:val}).limit(num).skip(start)  # num:表示pageSzie , start:表示起始索引,默认为0
    
    db.dog.find({dogKind:'边牧'}).limit(2).skip(1)
    
  • 如下:
    MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb
3.2.2.3 修改数据
  • 语法如下:
    db.dog.updateOne({key:val},[{$set:{key1:val1,key2:val2}}])
    
    db.dog.updateOne({dogName:'麦兜'},[{$set:{dogKind:'边境牧羊犬'}}])
    db.dog.updateOne({dogName:'麦兜'},[{$set:{dogKind:'边牧犬',dogAge:4}}])
    db.dog.updateOne({dogName:'麦兜'},{$set:{dogKind:'边牧犬22',dogAge:3}})  # []可以去掉
    
3.2.2.4 删除数据
  • 根据指定的键值对条件:
    db.集合.deleteOne({key:val})   # 1.1 删除单条数据,最多删除一个匹配指定筛选器的文档,即使多个文档可能匹配指定筛选器。
    db.dog.findOneAndDelete({dogKind:'秋田'}) # 1.2 删除单条数据,即便满足的有多条,删除之后,返回删除的数据
    
    db.集合.deleteMany({key:val})  # 删除多条数据,删除与指定筛选器匹配的所有文档。
    
    db.dog.remove({dogKind:'边牧'});  # remove() 删除满足条件的数据(可多条) ,但提示方法已被弃用
    
    db.集合.deleteMany({})   # 删除所有数据(如果给条件删除满足条件的数据,如果不给条件,删除所有的数据)
    db.dog.deleteMany({dogNum:{$in:['A-1005','A-1006']}})  # 删除满足条件的数据
    
3.2.2.5 更多操作参考
3.2.2.5.1 更多语法及例子
  • 请参考官网:
    中文网.
    英文网.
3.2.2.5.2 操作符等其他更多文档
  • 关于更多查询及操作符用法,参考下面的网站
    https://www.mongodb.org.cn/manual/query-comparison/.
    MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb

4. navicat链接

  • 服务只要起着,直接连就行
    MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb
  • 连上之后查看数据:
    • 可以使用命令查询:
      MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb
    • 也可以使用navicat自带的图形化查询
      MongoDb-01——Mac上安装MongoDb以及相关的简单命令,NoSql,nosql,mongodb

到了这里,关于MongoDb-01——Mac上安装MongoDb以及相关的简单命令的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • NoSql数据库及使用Python连接MongoDB

    NoSQL 数据库是非关系数据库,不使用结构化查询语言 (SQL) 进行数据操作。相反,他们使用其他数据模型进行访问和数据存储。SQL 数据库通常用于处理结构化数据,但它们可能不是处理非结构化或半结构化数据的最佳选择。 NoSQL 数据库提供了快速高效地存储和检索大量数据的

    2024年02月09日
    浏览(110)
  • 关于你欠缺的NoSQL中的redis和mongoDB

    不知不觉已经进入NoSQL的学习来了,那么什么是NoSQL呢?NoSQL的数据分类有哪一些呢? 一、 什么是NoSQL呢? 二、 NoSQL的数据分类有哪一些呢? REDIS中一些常用的命令 : LPUSH/LPUSHX:LPUSH是将值插入到链表的头部,LPUSHX是检测这个链表是否存在,如果存在的话会插入头部,如果不存

    2024年02月17日
    浏览(36)
  • 头歌 · NoSQL系列课程 · Neo4J / MongoDB 实验

    科研部建设中,覆盖歌云端实验平台对于Neoj4、MongoDB 的实验项目 目录 目录 ​编辑 Neo4j  实验一、二 MonGoDB实验三、四 实验五六、redis   Neo4j  实验一、二 MonGoDB实验三、四 实验五六、redis

    2024年02月07日
    浏览(39)
  • 分布式数据库NoSQL(四)——MongoDB 之聚合函数查询统计

    MongoDB 中聚合( aggregate )主要用于处理数据(诸如统计平均值,求和等),并返回计算后的数据结果,通常由聚合管道操作符和聚合表达式组合,完成数据处理。功能有点类似 Sql 语句中的 sum()、agv() 等。 目录 第1关:聚合管道操作符将文档定制格式输出(一) 常用聚合管道操作符

    2024年02月09日
    浏览(49)
  • NoSQL MongoDB Redis E-R图 UML类图概述

    NoSQL(Not only SQL)是对不同于传统的关系数据库的数据库管理系统的统称,即广义地来说可以把所有不是关系型数据库的数据库统称为NoSQL。 NoSQL 数据库专门构建用于特定的数据模型,并且具有灵活的架构来构建现代应用程序。NoSQL 数据库使用各种数据模型来访问和管理数据。这

    2024年02月10日
    浏览(43)
  • 分布式数据库NoSQL(二)——MongoDB 数据库基本操作

    MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。 MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似 json 的

    2024年02月06日
    浏览(52)
  • MongoDB 2023年度纽约 MongoDB 年度大会话题 -- 企业级从传统数据库到NOSQL,你会更好...

    开头还是介绍一下群,如果感兴趣PolarDB ,MongoDB ,MySQL ,PostgreSQL ,Redis, Oceanbase, 等有问题,有需求都可以加群群内有各大数据库行业大咖,CTO,可以解决你的问题。加群请联系 liuaustin3 ,在新加的朋友会分到2群(共1300人左右 1 + 2 + 3 + 4) 3群即将突破 400 (目前387)会关闭自由申请

    2024年02月07日
    浏览(46)
  • Redis系列学习文章分享---第一篇(Redis快速入门之初始Redis--NoSql+安装redis+客户端+常用命令)

    欢迎小伙伴交流学习,这是第一篇(Redis快速入门之初始Redis–NoSql+安装redis+客户端+常用命令),后续持续更新 Redis是一种键值型的NoSql数据库,这里有两个: 键值型 NoSql 其中 键值型 ,是指Redis中存储的数据都是以key、value对的形式存储,而value的形式多种多样,可以

    2024年02月20日
    浏览(57)
  • NOSQL简单实战

    目录 实战一:   1、 string类型数据的命令操作:  (1) 设置键值: (2) 读取键值: (3) 数值类型自增1:  (4) 数值类型自减1: (5) 查看值的长度:     2、 list类型数据的命令操作:     (1)对列表city插入元素:Shanghai Suzhou Hangzhou (2)将列表city里的头部的元

    2024年02月16日
    浏览(30)
  • NoSQL数据库使用场景以及架构介绍

    其它相关推荐: 系统架构之微服务架构 系统架构设计之微内核架构 鸿蒙操作系统架构 架构设计之大数据架构(Lambda架构、Kappa架构) 所属专栏:系统架构设计师 NoSQL(Not-onlySQL):不仅仅只是SQL,泛指非关系型的数据库。 是对关系型数据库的补充和完善,它不使用传统的表格

    2024年02月06日
    浏览(63)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包