你的位置:首页 > 数据库

[数据库]mongodb安装简单使用


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

 

brew常用命令

1、更新brew本身

1 brew update

2、使用brew安装软件

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

3、使用brew卸载软件

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

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

1 brew list

5、更新软件

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

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

1 brew outdated

7、查找软件

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

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

1 brew --cache

 

mongoDb安装

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

brew install mongodb

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

1 brew upgrade mongodb

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

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

sudo mkdir -p /data/db

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

sudo chown `id -u` /data/db

5、修改目录

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

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

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

ps -aef | grep mongo

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

1 sudo kill 6955

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

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

1 mongo2 3 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: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){...})