mac上安装mongoDb以及简单使用
年初粗略学习了下node,这好几个月没玩,突然发现已经忘完了,还是简单记录下基本知识,方便再次使用时资料查找。
一、mongoDb安装
在mac上安装了brew的情况下,可以直接执行命令
brew install mongodb,在mac系统中往往因为需要写入权限而要加入sudo
然后等几分钟就安装好了
1、mongoDb启动
第一个终端窗口输入 sudo mongod --config /usr/local/etc/mongod.conf
然后在第二个终端窗口输入 mongo
2、mongoDb关闭
方式一:在第一个窗口直接按 control+C
方式二:在第二个窗口切换数据库到admin use admin 然后执行 db.shutdownServer({force : true});
3、mongoDb修复
有时mongoDb会因为一些错误而无法启动,这时就要对其进行修复
mongod --repair
二、mongoDb常用语句
1、查询库、查询表
show dbs — 查询所有的数据库
show collections — 查询当前数据库下的所有数据表
2、建库和删库
use myDbs — 建立一个名为myDbs的数据库,当这个库存在时则是切换到这个数据库中去
use myDbs
db.dropDatabase(); — 这两句是删除这个数据库
3、建表和删表
表操作都是要先到一个数据库中去,通过use方法
db.myTable.insert({name:’hf’,age:20}); — 在mongodb中在插入数据时即创建了改表,此时创建的是名为myTable的数据表
db.myTable.drop(); — 删除myTable这个数据表
4、单表的增删改
db.myTable.insert({name:’hahaha’,age:12}); — 新增
db.myTable.update({name:’hf’},{$set:{age:25}}) — 修改,此处的操作相当于关系数据库中的 update myTable set age = 25 where name = ‘hf’
db.myTable.remove({name:’hf'}); — 删除,此处相当于关系数据库中的 delete myTable where name = ‘hf’
5、查询
db.myTable.find(); — 查询myTable中的所有数据
db.myTable.find().sort({age:1}) — 根据age升续
db.myTable.find().count(); — 查询
三、mongoose及其基本使用
由于mongodb上手方便,所以经常作为nodeJS建站的数据库,而mongoose则是NodeJS中操作mongodb一个工具库。在mongoose中存在这么几种链接、调用方式主要包括Schema、Model、Entity这3种操作类,其中Schema则是以数据类型为形式的实体,它不具备操作数据库的能力,但是它定义了操作数据表中元素的名称和类型;而Model则是单个表的实体,通过表的名字以及Schema中标注的类型将一个表进行实例化;那么最后一个Entity可以认为是表中单行的实例对象,可以对单行进行简单的新增删改查的操作。
1、建立链接和Schema、Model
var mongoose = require(‘mongoose’);
/*开始获取数据库连接,此处部分为固定写法,
*其中myinfo是要操作数据库的名称*/
var con = mongoose.connect(‘mongodb://localhost/myinfo');
/*获取mongoose全局的Schema对象,方便对多个表进行实例化*/
var sche = mongoose.Schema;
/*构建所需表的Schema,此处就构建了一个stu表的文件*/
var stuSchema = new sche({
name:String,
age:Number
});
/*构建表所需的模型 Model*/
var stuModel = con.model(’Stu’,stuSchema);
2、新增
方式一:
/* 新增,新增操作需要构建一个表单行实例*/
var stuEntity = new stuModel({name:’hf’,age:2});
stuEntity.save(function(err){…});
方式二:
/* 新增,通过Model新增*/
var json = {name:’hf’ , age:1};
stuModel.create(json , function(error){…})
2、修改
var param = {name:’hf’};
var update = {$set:{name:’sfa’,age:26}};
stuModel.update(param , update , function(error){...})
3、删除
var param = {name:’hf’};
stuModel.remove(param , function(error){...})
mac上安装mongoDb以及简单使用的更多相关文章
- 在Mac上安装MongoDB,配置全局路径
1.访问MongoDB官方下载地址 http://www.mongodb.org/downloads 2.点击“DOWNLOAD(tgz)”按钮: 3.将下载的文件压缩包解压后剪切到你的Mac中某个位 ...
- 在Mac上安装MongoDB
1.访问MongoDB官方下载地址 http://www.mongodb.org/downloads 2.点击“DOWNLOAD(tgz)”按钮: 3.将下载的文件压缩包解压后剪切到你的Mac中某个位 ...
- Mac上安装MongoDB
1.访问MongoDB官方下载地址 http://www.mongodb.org/downloads 2.点击“DOWNLOAD(tgz)”按钮: 3.将下载的文件压缩包解压后剪切到你的Mac中某个位 ...
- 【mongodb】如何在mac上安装mongoDB
1.登入MongoDB的官网 选择发布的版本 网址:https://www.mongodb.com/download-center/community 2.下载tgz的包,解压缩 3.打开终端,配置环 ...
- mac上安装mongodb数据库教程
1.官网下载压缩包,并解压到当地任一目录.(我的是Documents/develop/mongodb) 2.在mongodb下新建data文件夹,在data下新建db文件夹.(bin和data文件夹在 ...
- Mac上安装配置和简单使用PostgreSQL(仍然很不懂)
因为想要使用推荐的rails-template.需要使用postgres.并初始化了一个用户postgres,密码是postgres.( e.g. $ createuser -d postgres ) ...
- Mac上安装配置Go语言,其实很简单(一)
下载Go语言可以去:Go语言中文网 安装及自己选择是否修改GOPATH 下载下来后双击安装就好,使用 go version 查看安装版本: 在Mac上安装完成后,会自动设置一些环境变量,使用 go e ...
- Mac下安装 MongoDB
Mac 下安装 MongoDB 一般有两种方法,一种是通过源码安装,一种是直接使用 homebrew ,个人推荐使用 homebrew ,简单粗暴. 1.安装 homebrew : /usr/bin/ ...
- mac 上安装服务,查看服务,重启和关闭
首先了解下的Mac的 homebrew ,官网:https://brew.sh/index_zh-cn.html 简单的说: Homebrew 能干什么? 答:使用 Homebrew 安装 Apple ...
随机推荐
- HDU1069:Monkey and Banana(最长上升子序列的应用)
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1069 这题挺简单的,给定一个箱子的长宽高,要求啰箱子,但必须保证下面箱子的长和宽必须大于上面的箱子. 一个 ...
- Web框架简介
Web框架本质 众所周知,对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端. ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ...
- Django基础一
Django基础一 Web框架本质 框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以帮你快速开发特定的系统,简单地说,就是你用别人搭建好的舞台来做表演 ...
- Delphi 正则表达式起步
Delphi 正则表达式起步 在 Delphi 中使用正则表达式, 目前 PerlRegEx 应该是首选, 准备彻底而细致地研究它. 官方网站: http://www.regular-expressi ...
- redis的一些命令
字符串操作 EX在设置值的时候设置过期时间,ttl查看过期时间 expire能单独设置过期时间 查看所有的key key * 列表操作 lpush从列表左边添加值,rpush从列表右边添加值 lran ...
- CodeForces - 995E Number Clicker (双向BFS)
题意:给出u,v,p,对u可以进行三种变化: 1.u=(u+1)%p ; 2.u = (u+p-1)%p; 3.u = 模p下的逆元.问通过几步可以使u变成v,并且给出每一步的操作. 分析:朴素的b ...
- javascript Date对象 之 时间转字符串
javascript Date对象 --> 时间转字符串: 测试代码: <!DOCTYPE html> <html lang="en"> <he ...
- python中数据类型转换
python中list和str互转 1.list转str 假设有一个名为test_list的list,转换后的str名为test_str 则转换方法: test_str = "" ...
- SQL注入导图
本图来自信安之路学生渗透小组@辽宁-web-TwoDog, 博主觉得这张图画的很好,所以贴在这里提供参考!
- 华为S5700系列交换机配置通过流策略实现VLAN间三层隔离
组网图形 图1 配置通过流策略实现VLAN间三层隔离组网图 组网需求 如图一所示,为了通信的安全性,某公司将访客.员工.服务器分别划分到VLAN10.VLAN20.VLAN30中.公司希望: 员工.服 ...