文档章节

MongoDB安装

lilugirl
 lilugirl
发布于 2017/08/16 16:14
字数 657
阅读 58
收藏 0

在MAC OS上安装

  • 使用二进制文件安装
    curl -O http://downloads.mongodb.org/osx/mongodb-osx-x86_64-2.6.4.tgz

    解压缩文件

    tar -zxvf mongodb-osx-x86_64-2.6.4.tgz

    修改文件夹名称 为mongodb

    mv mongodb-osx-x86_64-2.6.4 mongodb

    mongodb的数据文件存储默认文件夹为 /data/db
    为其创建文件夹

    mkdir -p /data/db

    给/data/db目录赋予权限 ,其中liuyi是我电脑的用户名称,你可以该为你自己的

    chown -R liuyi /data/db

    进入到刚才下载的mongodb bin目录 启动mongod服务
     

    cd mongodb/bin
    mongod

    如果你之前安装过mongodb 再次做这个操作应该会有报错信息,只要在百度上搜索相关解决方案解决即可。可能遭遇的问题有两个:
     1 之前启动过mongod ,只要功过命令 ps aux | grep mongod查到进程id 然后用命令 kill -9 进程id  杀死此进程。 
    2 Failed to obtain address information for hostname bogon ,只要修改/etc/hosts文件 增加一条127.0.0.1 bogon 即可。

    启动成功以后 mongodb会默认占用27017端口 ,可以打开浏览器 http://127.0.0.1:27017 看看

  • 使用命令行工具
    进入到bin目录 输入mongo命令看看

    cd mongodb/bin
    mongo

    MongoDB默认使用test数据库链接本地服务实例

    输入如下命令 创建一个名为article的集合,插入一个包含title属性的json对象

    db.articles.insert({title:"Hello World!"})

    执行如下命令检索article集合种的对象

    db.articles.find()

    输出如下 (我是之前插入了两次json对象,所以显示了两条)

  • 数据库操作基本命令
    切换数据库 到mean

    use mean

    显示可用数据库

    show dbs

    插入数据到表posts中

    db.posts.insert({"title":"First Post","user":"liuyi"})

    查询posts表中的所有数据

    db.posts.find()
    

    根据条件查询

    db.posts.find({"user":"liuyi"})

    使用$in操作符查询

    db.posts.find({"user":{$in:["liuyi","alice"]} })

    and条件查询

    db.posts.find({"user":"liuyi","title":"First Post"});

    or条件查询

    db.posts.find({$or:[{"user":"alice"},{"user":"liuyi"}]})


    显示当前数据库下的所有表

    show collections

    删除post表

    db.posts.drop()

    根据条件更新posts表中的数据(默认更新一条符合条件的数据),如果没有匹配数据则新增一条数据

    db.posts.update({
      "user":"alice"
       },{
       "title":"Second Post",
       "user":"alice"
        },{
       upsert:true
       })
    

    如果改变第三个参数为 multi:true 则可以更新所有符合条件的纪录

    db.posts.update({
      "user":"alice"
       },{
       "title":"Second Post",
       "user":"alice"
        },{
        multi:true
       })
    


    如果没有传递id字段则新增,传递则修改

    db.posts.save({ "_id" : ObjectId("59960f46f31917b400da5a20"),
                    "title":"Third Post",
                    "user":"a mao"})

    删除posts表中所有数据

    db.posts.remove({})

    删除符合条件的所有数据

    db.posts.remove({"user":"liuyi"})

    删除符合条件的第一条数据

    db.posts.remove({"user":"liuyi"},true)

     

© 著作权归作者所有

共有 人打赏支持
lilugirl
粉丝 94
博文 394
码字总数 108494
作品 0
杨浦
程序员
私信 提问

暂无文章

MySQL学习笔记之二

数据库的操作总结就是:增删改查(CURD),今天记录一下基础的检索查询工作。 检索MySQL 1.查询表中所有的记录 mysql> select * from apps;+----+------------+-----------------------+------...

凌宇之蓝
33分钟前
1
0
PaddlePaddle-GitHub的正确打开姿势

GitHub是一个面向开源及私有软件项目的托管平台、也是项目版本管理工具,会使用它是程序员入门的必备技能。PaddlePaddle也不例外,所有的源码及项目进展都在GitHub上开源公布。但对于刚入门写...

深度学习之路
34分钟前
2
0
最强NLP模型BERT可视化学习

摘要: 最强NLP模型谷歌BERT狂破11项纪录,全面超越人类,本文通过可视化带你直观了解它。 2018年是自然语言处理(Natural Language Processing, NLP)领域的转折点,一系列深度学习模型在智...

阿里云官方博客
41分钟前
2
0
导出功能

public void downloadD(HttpServletRequest request, HttpServletResponse res,String contractName, String contractPath) throws IOException {// FileAttach fileAttach = fileA......

卖星星的小矮人
44分钟前
2
0
gradle 打包可执行jar包

group 'android.com'version '1.0-SNAPSHOT'apply plugin: 'java'sourceCompatibility = 1.8repositories { mavenCentral()}jar { manifest { attributes ('Main-......

zdglf
56分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部