文档章节

MongoDB安装

lilugirl
 lilugirl
发布于 2017/08/16 16:14
字数 657
阅读 55
收藏 0
点赞 1
评论 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
粉丝 92
博文 373
码字总数 104583
作品 0
杨浦
程序员

暂无文章

idea tomcat 远程调试

tomcat 配置 编辑文件${tomcat_home}/bin/catalina.sh,在文件开头添加如下代码。    CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=7829" Idea端配......

qwfys
今天
1
0
遍历目录下的文件每250M打包一个文件

#!/usr/bin/env python # -*- utf-8 -*- # @Time : 2018/7/20 0020 下午 10:16 # @Author : 陈元 # @Email : abcmeabc@163.com # @file : tarFile.py import os import tarfile import thr......

寻爱的小草
今天
1
0
expect同步文件&expect指定host和要同步的文件&构建文件分发系统&批量远程执行命令

20.31 expect脚本同步文件 expect通过与rsync结合,可以在一台机器上把文件自动同步到多台机器上 编写脚本 [root@linux-5 ~]# cd /usr/local/sbin[root@linux-5 sbin]# vim 4.expect#!/...

影夜Linux
今天
1
0
SpringBoot | 第九章:Mybatis-plus的集成和使用

前言 本章节开始介绍数据访问方面的相关知识点。对于后端开发者而言,和数据库打交道是每天都在进行的,所以一个好用的ORM框架是很有必要的。目前,绝大部分公司都选择MyBatis框架作为底层数...

oKong
今天
12
0
win10 上安装解压版mysql

1.效果 2. 下载MySQL 压缩版 下载地址: https://downloads.mysql.com/archives/community/ 3. 配置 3.1 将下载的文件解压到合适的位置 我最终将myql文件 放在:D:\develop\mysql 最终放的位...

Lucky_Me
今天
2
0
linux服务器修改mtu值优化cpu

一、jumbo frames 相关 1、什么是jumbo frames Jumbo frames 是指比标准Ethernet Frames长的frame,即比1518/1522 bit大的frames,Jumbo frame的大小是每个设备厂商规定的,不属于IEEE标准;...

问题终结者
今天
1
0
expect脚本同步文件expect脚本指定host和要同步的文件 构建文件分发系统批量远程执行命令

expect脚本同步文件 在一台机器上把文件同步到多台机器上 自动同步文件 vim 4.expect [root@yong-01 sbin]# vim 4.expect#!/usr/bin/expectset passwd "20655739"spawn rsync -av ro...

lyy549745
今天
1
0
36.rsync下 日志 screen

10.32/10.33 rsync通过服务同步 10.34 linux系统日志 10.35 screen工具 10.32/10.33 rsync通过服务同步: rsync还可以通过服务的方式同步。那需要开启一个服务,他的架构是cs架构,客户端服务...

王鑫linux
今天
0
0
matplotlib 保存图片时的参数

简单绘图 import matplotlib.pyplot as pltplt.plot(range(10)) 保存为csv格式,放大后依然很清晰 plt.savefig('t1.svg') 普通保存放大后会有点模糊文件大小20多k plt.savefig('t5.p...

阿豪boy
今天
3
0
java 8 复合Lambda 表达式

comparator 比较器复合 //排序Comparator.comparing(Apple::getWeight);List<Apple> list = Stream.of(new Apple(1, "a"), new Apple(2, "b"), new Apple(3, "c")) .collect(......

Canaan_
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部