zoukankan      html  css  js  c++  java
  • Mac下MongoDB配置与操作

    1.环境配置

    Xcode安装

    2.下载安装包

    官网地址是:MongoDB Download Center | MongoDB

    3.解压文件, 将文件放置/usr/local
    4.配置环境变量
    open -e .bash_profile
    
    export PATH=${PATH}:/usr/local/MongoDB/bin

    source .bash_profile

    5.验证是否安装完毕

    mongod -version
    db version v4.0.9
    git version: f*********************62909765
    allocator: system
    modules: none
    build environment:
        distarch: x86_64
        target_arch: x86_64

    6.创建存储文件目录

    sudo mkdir -p /data/db
    sudo chmod +X /data/db  -- 增加可写权限
    sudo chown username /data/db  -- 授权给username

    7.启动mongodb

    mongod

    显示等候客户端连接的界面就代表启动成功了,如果不成功就检查下 /data/db 文件夹位置对不对,不行就重新删掉建一个, 打开浏览器,输入 localhost:27017 ,会出现这样一行文字。

    8.打开命令行

    mongo

    可以对数据库进行操作,要停止MongoDB的时候一定要正确的退出,不然下次再次连接数据库会出现问题,使用下面的两行代码可以完成这一操作。

    9.创建数据库 

    use db
    show dbs

    10.创建集合Collection

    db.createCollection("testCollection")

    11.插入数据

    db.testCollection.insert({"name" : "菜鸟教程"})

    12.查看集合Collection

    show collections

    13.删除集合

    db.collection.drop()

    14.集合插入文档

    db.testCollection.insert({title: 'MongoDB 教程', 
        description: 'MongoDB 是一个 Nosql 数据库',
        by: '菜鸟教程',
        url: 'http://www.runoob.com',
        tags: ['mongodb', 'database', 'NoSQL'],
        likes: 100
    })

    15.查询文档

    (1) 查询全部数据

    db.collection.find(query, projection)
    -- query :可选,使用查询操作符指定查询条件
    -- projection :可选,使用投影操作符指定返回的键。查询时返回文档中所有键值, 只需省略该参数即可(默认省略)。
    
    db.testCollection.find().pretty()    
    -- pretty() 方法以格式化的方式来显示所有文档。 

    (2)MongoDB 的 find() 方法可以传入多个键(key),每个键(key)以逗号隔开,即常规 SQL 的 AND 条件。 

    db.testCollection.find({"by":"菜鸟教程", "title":"MongoDB 教程"}).pretty()

    (3) OR 条件语句使用了关键字 $or,语法格式如下:

    db.testCollection.find({$or:[{"by":"菜鸟教程"},{"title": "MongoDB 教程"}]}).pretty()

    (4)AND 和 OR 联合使用

    常规 SQL 语句为: 'where likes>50 AND (by = '菜鸟教程' OR title = 'MongoDB 教程')'
    
    db.testCollection.find({"likes": {$gt:50}, $or: [{"by": "菜鸟教程"},{"title": "MongoDB 教程"}]}).pretty()

    16.删除文档

    db.collection.remove(
       <query>,
       {
         justOne: <boolean>,
         writeConcern: <document>
       }
    )

    参数说明:

    • query :(可选)删除的文档的条件。
    • justOne : (可选)如果设为 true 或 1,则只删除一个文档,如果不设置该参数,或使用默认值 false,则删除所有匹配条件的文档。
    • writeConcern :(可选)抛出异常的级别

    (1)特定删除

    db.testCollection.remove({'title':'MongoDB 教程'})

    (2)删除全部

    db.col.remove({})
  • 相关阅读:
    数据库基础之锁(2. 幻读理解)
    数据库基础之锁(3. 避免幻读对事务并发性的影响)
    数据库基础之锁(4. 多版本并发控制MVCC原理详解)
    同步、异步与阻塞非阻塞
    C++基础之Lambda表达式
    C++基础之static的二三事
    个人总结 —— 事事满怀热情
    第三次结对作业:需求建模练习
    第二次结对作业
    第一次结对作业
  • 原文地址:https://www.cnblogs.com/iloverain/p/10805723.html
Copyright © 2011-2022 走看看