安装和启动

  1. 安装

官方安装文档

本地mac Os推荐使用Homebrew

⚠️ 目前直接使用~~brew install mongodb~~ 安装 mongodb 时提示:Error: No available formula with the name 'mongodb' ;那是因为MongoDB不再是开源的了,并且已经从Homebrew中移除 #43770

最新安装方式:brew install mongodb-community

最新安装方式参考文章

  1. 配置
配置文件:`/usr/local/etc/mongod.conf`
日志目录路径:`/usr/local/var/log/mongodb`
数据目录路径:`/usr/local/var/mongodb`
  1. 启动

    本地终端输入 mongod --config /usr/local/etc/mongod.conf 启动后另开终端输入 mongo
  • mongod 是用来连接到mongodb数据库服务器的,即服务器端。
  • mongo 是用来启动MongoDB shell的,是mongodb的命令行客户端。
  1. 验证
  • 按照默认的配置文件启动mongod --config /usr/local/etc/mongod.conf

  • 通过浏览器访问http://localhost:27017/  也可以验证是否安装成功,如果出现

    It looks like you are trying to access MongoDB over HTTP on the native driver port.

    说明安装成功。

mongo常用命令

mongod 启动mongodb后,在新的终端输入 mongo,进入MongoDB shell环境中

  1. 基础命令
db     // 显示当前使用mongodb数据库
show dbs // 查看当前所有已存在数据库
use local // 使用当前存在的数据库local(创建/切换数据库)
db.createCollection("集合名称") // 创建集合
db.集合名称.drop() // 移除集合
show collections  |   show tables  // 查看当前mongodb数据库下所有集合(表)两个命令都可以用
db.users.insert({userid:"admin",password:"123456"})  // 插入数据
db.users.find()     // 查看users集合里数据
exit  // 退出
  1. 增 -- 插入
db.collectionName.insert({userid:"admin",password:"123456"}) 
db.collectionName.insertOne() // 向指定集合中插入一条文档数据
db.collectionName.insertMany() // 向指定集合中插入多条文档数据

实例:

#  插入单条数据

> var document = db.collection.insertOne({"a": 3})
> document
{
        "acknowledged" : true,
        "insertedId" : ObjectId("571a218011a82a1d94c02333")
} #  插入多条数据
> var res = db.collection.insertMany([{"b": 3}, {'c': 4}])
> res
{
        "acknowledged" : true,
        "insertedIds" : [
                ObjectId("571a22a911a82a1d94c02337"),
                ObjectId("571a22a911a82a1d94c02338")
        ]
}

3. 删 -- 清空集合数据

db.contact.remove({})   // 清空contact集合数据

4. 查 -- 查找

db.contact.find().pretty()  // 查看contact集合下所有内容

 db.contact.find({"_id":2338377732129792})    // 按字段指定值查询数据

5. 改 -- 更新

db.contact.update({name:"user1"},{name:"jack"})  // 覆盖

 db.contact.update({name:”user1”},{$set:{address:”bj”}},0,1)  // 更新,有则改之 无则添之

mongodb 实用报错指南

  1. mongod启动后 报Failed to unlink socket file /tmp/mongodb-27017.sock

    解决方法: 在终端中输入sudo rm /tmp/mongodb-27017.sock移除该文件

  2. mongod启动后 报Unable to create/open lock file

    应该是没有读写权限,加权限sudo chown 777 /data/db

  3. mongod启动后,终端输入命令mongo报道 directory /data/db not found. ; 说明默认的数据库路径不存在,我们首先需要创建该目录。

    sudo mkdir -p /data/db 磁盘根目录下创建目录需要sudo权限

前端开发--Mongodb篇的更多相关文章

  1. 前端开发--nginx篇

    安装和启动 Mac上搭建nginx教程 通过Homebrew 安装nginx brew install nginx 配置 添加配置文件在 /usr/local/etc/nginx/servers 目录 ...

  2. 网站前端开发--css篇

    Ⅰ 全局:global.css 全局样式为全站公用,为页面样式基础,页面中必须包含. 结构:layout.css 页面结构类型复杂,并且公用类型较多时使用.多用在首页级页面和产品类页面中. 私有:st ...

  3. .Net Core ORM选择之路,哪个才适合你 通用查询类封装之Mongodb篇 Snowflake(雪花算法)的JavaScript实现 【开发记录】如何在B/S项目中使用中国天气的实时天气功能 【开发记录】微信小游戏开发入门——俄罗斯方块

    .Net Core ORM选择之路,哪个才适合你   因为老板的一句话公司项目需要迁移到.Net Core ,但是以前同事用的ORM不支持.Net Core 开发过程也遇到了各种坑,插入条数多了也特别 ...

  4. openresty 前端开发入门五之Mysql篇

    openresty 前端开发入门五之Mysql篇 这章主要演示怎么通过lua连接mysql,并根据用户输入的name从mysql获取数据,并返回给用户 操作mysql主要用到了lua-resty-my ...

  5. 前端开发必学技能之一———非关系数据库又像关系数据库的MongoDB快速入门第一步下载与安装

    数据库总的来说,分为两个方向:关系数据库和非关系数据库.我们常见的MySQL.Oracle.SQLSerever以及IBMDB2都是属于关系数据库,这里的关系值得是二维表的结构,但是由于随着web的应 ...

  6. 1. web前端开发分享-css,js入门篇

    关注前端这么多年,没有大的成就,就入门期间积累了不少技巧与心得,跟大家分享一下,不一定都适合每个人,毕竟人与人的教育背景与成长环境心理活动都有差别,但就别人的心得再结合自己的特点,然后探索适合自己的学 ...

  7. 2. web前端开发分享-css,js进阶篇

    一,css进阶篇: 等css哪些事儿看了两三遍之后,需要对看过的知识综合应用,这时候需要大量的实践经验, 简单的想法:把qq首页全屏另存为jpg然后通过ps工具切图结合css转换成html,有无从下手 ...

  8. 旨在脱离后端环境的前端开发套件 - IDT Server篇

    IDT,一个基于Nodejs的,旨在脱离后端环境的前端开发套件,目的就是能让前端开发完全脱离后端的环境,无论后端是什么模板引擎(主流),都能应付自如. IDT主要包括两大部分:Server + Bui ...

  9. 旨在脱离后端环境的前端开发套件 - IDT之Server篇

    IDT,一个基于Nodejs的,旨在脱离后端环境的前端开发套件,目的就是能让前端开发完全脱离后端的环境,无论后端是什么模板引擎(主流),都能应付自如. IDT主要包括两大部分:Server + Bui ...

随机推荐

  1. npm基本语法

    npm -version  查看npm版本 npm install <name>  安装node.js的依赖包 npm install <name> @3.0.6 安装版本为3 ...

  2. JVM如何判断对象能否被回收

    •写在前面说起Java和C++,很容易想到让人疯狂的指针,Java使用了内存动态分配和垃圾回收技术,让我们从C++的各种指针问题中摆脱出来,更加专心于业务逻辑,不过如果我们需要深入了解java的JVM ...

  3. django框架进阶-中间件-长期维护

    ##################    为什么使用中间件?      ####################### 先说几个需求, 1,url的白名单,url=[ "XX"] ...

  4. Block to|wreck|Range|Reach|span|chase around|amuse|exploit |instructed

    English note: Block to 纷涌而至 destroy多指彻底地.毁灭性地破坏,含导致无用,不能或很难再修复的意味. wreck侧重指船只.车辆.房屋等受到严重破坏或完全毁坏,也可指计 ...

  5. redis保存dataset

    公司统一走redis缓存,也将之前的memcache迁移到redis碰到问题是redis的dataset缓存. memcache底层封装了dataset的序列化. 而redis引的DLL包,未支持.所 ...

  6. 为什么有这么多人呼吁要取代Facebook?

    扎克伯格这段时间算是栽了,身为人生大赢家的他或许正在遭受最为灰暗的时刻.因为泄露5000万用户数据这一事件,Facebook股价暴跌且扎克伯格身家缩水.被英国与美国相关部门调查.#删除Facebook ...

  7. Mybatis 入门之resultMap与resultType讲解实例

    resultMap:适合使用返回值是自定义实体类的情况 resultType:适合使用返回值得数据类型是非自定义的,即jdk的提供的类型 resultMap : type:映射实体类的数据类型 id: ...

  8. Spring Boot 之 Redis详解

    Redis是目前业界使用最广泛的内存数据存储. Redis支持丰富的数据结构,同时支持数据持久化. Redis还提供一些类数据库的特性,比如事务,HA,主从库. REmote DIctionary S ...

  9. GOM通区插件-支持GOM绝对路径-读取配置项-分割字符等功能。不定期更新

    A-A+ 2019年07月19日 Gom引擎 阅读 45 views 次   [@Main] #IF #SAY [<读配置项/@读配置项>] [<写配置项/@写配置项>] [& ...

  10. e代驾狂野裁员 O2O逐渐恢复理智?

    O2O逐渐恢复理智?" title="e代驾狂野裁员 O2O逐渐恢复理智?">     近段时间以来,O2O行业堪称"哀鸿遍野",十分凄惨.巨头 ...