前端开发--Mongodb篇
安装和启动
- 安装
本地mac Os推荐使用Homebrew
⚠️ 目前直接使用~~brew install mongodb~~ 安装 mongodb 时提示:
Error: No available formula with the name 'mongodb'
;那是因为MongoDB不再是开源的了,并且已经从Homebrew中移除 #43770
最新安装方式:brew install mongodb-community
- 配置
配置文件:`/usr/local/etc/mongod.conf`
日志目录路径:`/usr/local/var/log/mongodb`
数据目录路径:`/usr/local/var/mongodb`
- 启动
本地终端输入mongod --config /usr/local/etc/mongod.conf
启动后另开终端输入mongo
- mongod 是用来连接到mongodb数据库服务器的,即服务器端。
- mongo 是用来启动MongoDB shell的,是mongodb的命令行客户端。
- 验证
按照默认的配置文件启动
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环境中
- 基础命令
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 // 退出
- 增 -- 插入
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 实用报错指南
mongod启动后 报
Failed to unlink socket file /tmp/mongodb-27017.sock
解决方法: 在终端中输入sudo rm /tmp/mongodb-27017.sock
移除该文件mongod启动后 报
Unable to create/open lock file
应该是没有读写权限,加权限sudo chown 777 /data/dbmongod启动后,终端输入命令mongo报道
directory /data/db not found.
; 说明默认的数据库路径不存在,我们首先需要创建该目录。
sudo mkdir -p /data/db
磁盘根目录下创建目录需要sudo权限
前端开发--Mongodb篇的更多相关文章
- 前端开发--nginx篇
安装和启动 Mac上搭建nginx教程 通过Homebrew 安装nginx brew install nginx 配置 添加配置文件在 /usr/local/etc/nginx/servers 目录 ...
- 网站前端开发--css篇
Ⅰ 全局:global.css 全局样式为全站公用,为页面样式基础,页面中必须包含. 结构:layout.css 页面结构类型复杂,并且公用类型较多时使用.多用在首页级页面和产品类页面中. 私有:st ...
- .Net Core ORM选择之路,哪个才适合你 通用查询类封装之Mongodb篇 Snowflake(雪花算法)的JavaScript实现 【开发记录】如何在B/S项目中使用中国天气的实时天气功能 【开发记录】微信小游戏开发入门——俄罗斯方块
.Net Core ORM选择之路,哪个才适合你 因为老板的一句话公司项目需要迁移到.Net Core ,但是以前同事用的ORM不支持.Net Core 开发过程也遇到了各种坑,插入条数多了也特别 ...
- openresty 前端开发入门五之Mysql篇
openresty 前端开发入门五之Mysql篇 这章主要演示怎么通过lua连接mysql,并根据用户输入的name从mysql获取数据,并返回给用户 操作mysql主要用到了lua-resty-my ...
- 前端开发必学技能之一———非关系数据库又像关系数据库的MongoDB快速入门第一步下载与安装
数据库总的来说,分为两个方向:关系数据库和非关系数据库.我们常见的MySQL.Oracle.SQLSerever以及IBMDB2都是属于关系数据库,这里的关系值得是二维表的结构,但是由于随着web的应 ...
- 1. web前端开发分享-css,js入门篇
关注前端这么多年,没有大的成就,就入门期间积累了不少技巧与心得,跟大家分享一下,不一定都适合每个人,毕竟人与人的教育背景与成长环境心理活动都有差别,但就别人的心得再结合自己的特点,然后探索适合自己的学 ...
- 2. web前端开发分享-css,js进阶篇
一,css进阶篇: 等css哪些事儿看了两三遍之后,需要对看过的知识综合应用,这时候需要大量的实践经验, 简单的想法:把qq首页全屏另存为jpg然后通过ps工具切图结合css转换成html,有无从下手 ...
- 旨在脱离后端环境的前端开发套件 - IDT Server篇
IDT,一个基于Nodejs的,旨在脱离后端环境的前端开发套件,目的就是能让前端开发完全脱离后端的环境,无论后端是什么模板引擎(主流),都能应付自如. IDT主要包括两大部分:Server + Bui ...
- 旨在脱离后端环境的前端开发套件 - IDT之Server篇
IDT,一个基于Nodejs的,旨在脱离后端环境的前端开发套件,目的就是能让前端开发完全脱离后端的环境,无论后端是什么模板引擎(主流),都能应付自如. IDT主要包括两大部分:Server + Bui ...
随机推荐
- 把Java代码转成c#可用的dll
1.首先你需要到 IKVM官网 下载IKVM.http://sourceforge.net/projects/ikvm/files/,需要注意的是如果你用的是.net framework2.0,那么最 ...
- python实现个人信息随机生成
""" 生成随机姓名.电话号码.身份证号.性别.应行卡号.邮箱 """ import random from firstname impor ...
- Oralce获取32位随机数
SELECT SYS_GUID() from dual;
- cs231n spring 2017 lecture15 Efficient Methods and Hardware for Deep Learning
讲课嘉宾是Song Han,个人主页 Stanford:https://stanford.edu/~songhan/:MIT:https://mtlsites.mit.edu/songhan/. 1. ...
- left join on和where 限制查询的区别在于
left join on: 会显示前表的所有数据,不满足显示为null或者为0 . 而where显示的为满足条件的记录,不满足但是存在的数据不显示. 做统计数据的时候,用join on比较合理.
- Serializable 接口(序列化)
目录 Serializable 接口(序列化) 前言 用途 如何实现 异常 serialVersionUID transient关键字 Serializable 接口(序列化) 前言 查看API文档时 ...
- Eclipse 配置Android 开发环境
1.eclipse安装ADT插件. 地址:http://dl-ssl.google.com/android/eclipse/ 2.安装成功后,提示重启.重新启动后弹出android sdk 的路径选择 ...
- mudbox安装未完成,某些产品无法安装的解决方法
mudbox提示安装未完成,某些产品无法安装该怎样解决呢?,一些朋友在win7或者win10系统下安装mudbox失败提示mudbox安装未完成,某些产品无法安装,也有时候想重新安装mudbox的时候 ...
- HTML name、id、class 的区别
转载: 在一个页面中,有许多的控件(元素或标签).为了更方便的操作这些标签,就需要给这些标签标识一个身份牌. 目录 1. name :指定标签的名称. 2. id :指定标签的唯一标识. 3. cla ...
- linux有些sh文件,为什么要用 ./ 来执行
因为有环境变量PATH,里面包含了许多目录,这些目录下的可执行文件就无需输入完整路径来执行.你可以用 echo "$PATH"查看当前的环境变量包含的目录,自带的命令文件都是在PA ...