转自Mac下使用brew安装mongodb,按着步骤已成功安装。

brew常用命令

1、更新brew本身

 brew update

2、使用brew安装软件

1 brew install soft_name
2 // soft_name为你所要安装软件的标志,如使用brew安装git
3 brew install git

3、使用brew卸载软件

 brew uninstall soft_name
// soft_name为你所要卸载软件的标志,如使用brew卸载git
brew uninstall git

4、显示使用brew安装的软件列表

 brew list

5、更新软件

 brew upgrade        // 更新所有使用brew安装的软件
brew upgrade git // 更新某个使用brew安装的软件

6、查看哪些软件需要更新

 brew outdated

7、查找软件

 // 当你记不清软件的名字的时候,你可以使用search,只需要写去几个字母,他就会帮你联想,并把所有可能的结果输出给你
brew search

8、查看使用brew安装的东西,安装在哪里

 brew --cache

mongoDb安装

1、有了brew,我们安装mongodb就变得很简单了:

brew install mongodb

2.之后将我们的mongodb升级一下,确保版本最新的

 brew upgrade mongodb

现在就启动mongo你并不会成功

3、在启动mongo之前,我们需要创建一个目录,为mongo默认的数据写入目录

sudo mkdir -p /data/db

4、然后给刚刚创建的目录以可读可写的权限

sudo chown `id -u` /data/db

5、修改目录

 // /data/db 目录是mongo的默认目录,如果你想使用其他目录,可以使 --dbpath 参数
mongo --dbpath dir_name
// dir_name 为你的目录名字

现在,你可以放心的启动mongodb了,执行下面的命令:mongod、mongo

如果有一天你发现你的数据库突然启动不了了,可能是你为正常关闭导致的,你可以删除掉mongod.lock文件,然后重新启动,如果还是不可以,你可以查看一下进程,然后杀掉:

ps -aef | grep mongo

然后根据进程ID杀掉进程:

 sudo kill 

重新启动mongodb服务,即可:mongod

我们可以新开一个终端窗口连接数据库并试着查看所有的数据库:

 mongo

 show dbs

最后,像大家推荐一个连接mongo的客户端可视化工具 robomongodb,它是跨平台的工具,我们可以下载Mac版的,安装后打开,界面是这个样子:

点击create按钮,创建新的连接,会弹出一个连接的配置框,里面有一些默认的参数,我们保持默认,直接点击save,再点击connect按钮就好了:

下图是点击connect连接数据库成功后的界面

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:});
stuEntity.save(function(err){…});

方式二:

/* 新增,通过Model新增*/
var json = {name:’hf’ , age:};
stuModel.create(json , function(error){…})

2、修改

var param = {name:’hf’};
var update = {$set:{name:’sfa’,age:}};
stuModel.update(param , update , function(error){...})

3、删除

var param = {name:’hf’};
stuModel.remove(param , function(error){...})

3. 导入导出数据库

导入:

mongorestore -h host -d dataName --dir=path

-h:指明数据库宿主机的IP    -u:指明数据库的用户名    -p:指明数据库的密码     -d:指明数据库的名字,当然这个名称也可以和导出时候的不一样

比如

导出:

>mongodump -h dbhost -d dbname -o dbdirectory

-h:MongDB所在服务器地址,例如:127.0.0.1,当然也可以指定端口号:127.0.0.1:27017   -d:需要备份的数据库实例,例如:test  -o:备份的数据存放位置(不填的话为根目录)

mongodb安装&简单使用的更多相关文章

  1. MongoDB安装说明以及MongoVUE使用

    简单介绍mongoDb MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案. MongoDB是一个介于关系数据库和非关系数据库之间的产 ...

  2. MongoDB安装及多实例启动

    MongoDB安装及多实例启动 MongoDB简介 MongoDB是一款跨平台.面向文档的数据库.可以实现高性能.高可用性,并且能够轻松扩展,是一个基于分布式文件存储的开源数据库系统,在高负载的情况下 ...

  3. mongodb 安装与启动简单使用

    环境:mac 10.11.6 一.安装步骤:按照官网的教程: 1.打开终端 安装或升级brew: brew update 2.安装mongoDB二进制文件: brew install mongodb ...

  4. MongoDB(1)--简单介绍以及安装

    前段时间接触了NoSql类型的数据库redis,当时是作为缓存server使用的.那么从这篇博客開始学习还有一个非常出名的NoSql数据库:MongoDb.只是眼下还没有在开发其中使用.一步一步来吧. ...

  5. Linux系统下MongoDB的简单安装与基本操作

    这篇文章主要介绍了Linux系统下MongoDB的简单安装与基本操作,需要的朋友可以参考下   Mongo DB ,是目前在IT行业非常流行的一种非关系型数据库(NoSql),其灵活的数据存储方式,备 ...

  6. MongoDB的Spring-data-mongodb集成(Win10 x64) 第一章 - MongoDB安装与简单命令

    这是MongoDB系列的第一章,作者将持续更新. 1.下载 https://www.mongodb.com/download-center#community 2.安装与配置 有关安装的任何困难请点击 ...

  7. win7 安装 MongoDB 及简单操作

    下载地址 http://dl.mongodb.org/dl/win32/x86_64 这里用的版本是 mongodb-latest-signed.msi 同时下载 mongodb-compass 下载 ...

  8. mac上安装mongoDb以及简单使用

    年初粗略学习了下node,这好几个月没玩,突然发现已经忘完了,还是简单记录下基本知识,方便再次使用时资料查找. 一.mongoDb安装 在mac上安装了brew的情况下,可以直接执行命令 brew i ...

  9. win7 64位下 mongodb安装及命令运行

    有网友老催我把框架加上mongodb的支持,于是偶尔抽空看了看相关的文章. 今天有缘,就把mongodb安装了一下,中间遇到了小小的问题,So,把整个过程记录一下: 1:先上官网:http://www ...

随机推荐

  1. 04.LoT.UI 前后台通用框架分解系列之——轻巧的弹出框

    LOT.UI分解系列汇总:http://www.cnblogs.com/dunitian/p/4822808.html#lotui LoT.UI开源地址如下:https://github.com/du ...

  2. 【开源】分享2011-2015年全国城市历史天气数据库【Sqlite+C#访问程序】

    由于个人研究需要,需要采集天气历史数据,前一篇文章:C#+HtmlAgilityPack+XPath带你采集数据(以采集天气数据为例子),介绍了基本的采集思路和核心代码,经过1个星期的采集,历史数据库 ...

  3. [C#] 简单的 Helper 封装 -- RegularExpressionHelper

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  4. MySQL中interactive_timeout和wait_timeout的区别

    在用mysql客户端对数据库进行操作时,打开终端窗口,如果一段时间没有操作,再次操作时,常常会报如下错误: ERROR (HY000): Lost connection to MySQL server ...

  5. Discuz论坛黑链清理教程

    本人亲测有效,原创文章哦~~~ 论坛黑链非常的麻烦,如果你的论坛有黑链,那么对不起,百度收录了你的黑链,不会自动删除,需要你手动去清理. 什么是黑链 黑链,顾名思义,就是一些赌博网站的外链,这些黑链相 ...

  6. [开发笔记]GCC 分支预测优化

    #define likely(x) __builtin_expect(!!(x),1)#define unlikely(x) __builtin_expect(!!(x),0) 用于优化在做分支判断的 ...

  7. js数组学习整理

    原文地址:js数组学习整理 常用的js数组操作方法及原理 1.声明数组的方式 var colors = new Array();//空的数组 var colors = new Array(3); // ...

  8. 命名sql数据集

    所谓的命名sql其实也就是数据库里的sql语句,普元EOS里做了一定的封装,以方便在程序中的使用. 命名SQL的基本元素包括: 1. <parameterMap> parameterMap ...

  9. Express 教程 01 - 入门教程之经典的Hello World

    目录: 前言 一.Express?纳尼?! 二.开始前的准备工作 三.测试安装之经典的Hello World 四.使用express(1)来生成一个应用程序 五.说明 前言: 本篇文章是建立在Node ...

  10. 怎样两个月完成Udacity Data Analyst Nanodegree

    在迷恋数据科学很久后,我决定要在MOOC网站上拿到一份Data Science的证书.美国三个MOOC网站,Udacity上的课程已经被分成了数个nanodegree,每个nanodegree都是目前 ...