mongodb安装

window安装方法就不讨论了,比较简单~我们来看一下在linux下面的安装步骤~(这里需要一点linux的简单命令知识哈)

1.下载文件到服务器(先创建好自己想安装的目录)~

curl -O http://fastdl.mongodb.org/linux/mongodb-linux-i686-2.0.1.tgz  #下载安装文件

2.解压下载的文件

[root@localhost soft]# tar -zxvf mongodb-linux-i686-2.0.2-rc2.tgz

3.我们解压到这么长的文件名(mongodb-linux-i686-2.0.2-rc2)改一下吧,改成(mongodb)就好了,这样方便我们操作路径和好看简洁一点嘛。好啦,下载解压好改好名,现在我们看到的文件应该是这样的--->mongodb文件夹下面有bin文件夹,bin文件夹下面有一个应用程序文件。现在我们有下面的命令在mongodb目录下新建一个data目录存放数据、新建一个log目录存放日志,然后在log目录下新建一个日志文件,例如我们命名为mongodb.log

[root@localhost mongodb]# mkdir log
[root@localhost mongodb]# mkdir data
[root@localhost mongodb]# cd log
[root@localhost log]# touch mongodb.log

Ok文件夹创建好了,然后我们定位到mongodb/bin目录中(如下命令)

[root@localhost local]# cd mongodb/bin  

鸡冻的时刻来了!我们来启动一下mongodb

1.简单启动数据库

[root@localhost mongodb]# ./bin/mongod(这个很清楚吧就是运行bin下面的mongod.exe文件)  -port 10001(设置端口号为10001,默认的是27017)  --dbpath=data/(设置存放数据库的路径)   --logpath=log/mongodb.log  (设置日志文件及路径)

下面来一个上面命令的纯静版

[root@localhost mongodb]# ./bin/mongod -port 10001 --dbpath = data/  --logpath=log/mongodb.log  

在后台一直运行版加fork版

[root@localhost mongodb]# ./bin/mongod -port 10001 --dbpath = data/ --logpath=log/mongodb.log --fork

需要用户名密码登录版

[root@localhost mongodb]# ./bin/mongod -port 10001 --dbpath = data/  --logpath=log/mongodb.log --fork --auth

服务成功启动有没有!有没有!

再接下来我们就要操作数据库啦 先运行mongodb的shell脚本

[root@localhost mongodb]# ./bin/mongo
//运行之后看到以下信息说明成功运行
MongoDB shell version: 3.2.9
connecting to: test

2.好啦我们可以操作数据库了

show dbs  //查下数据库列表
admin //会输出默认的数据库名admin

3.一些简单常用操作数据库的命令

1.use mydb  //切换或叫打开数据库,如果数据库不存在则会自动创建(mydb为数据库名)
2.db.dropDatabase()//删除数据库
3.db.createCollection(name(集合名称),options(可选参数太多可自行网上查)) //创建集合(所谓的集合其实就相当于传统的表)
4.db.mycollection(集合名).drop() //删除集合
5.db.mycollection(集合名).insert({要存的数据json对象}) //插入数据到集合(表)
6.db.mycollection(集合名).find() //查数据
7.db.mycollection(集合名).find().pretty() //查数据带格式化
8.db.mycollection.remove({'title':'MongoDB Overview'}) //删除带条件title参数的数据
9.db.mycollection.remove({}) //删除所有数据 网上有很多是这样写的db.mycollection.remove() 小sam发现会报错

好啦,先说这些吧,还有很多命令大家网上找找了。

mongodb用户权限

进入mongodb的操作台

1.创建用户

db.createUser({user:"你的用户名",pwd:"密码",roles:[{role: "userAdminAnyDatabase", db: "admin"}]})

//roles是可选的参数,指用户指定的角色,可选角色参数如下
1. 数据库用户角色:read、readWrite;
2. 数据库管理角色:dbAdmin、dbOwner、userAdmin;
3. 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
4. 备份恢复角色:backup、restore;
5. 所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
6. 超级用户角色:root
// 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase)
7. 内部角色:__system

具体角色
Read:允许用户读取指定数据库
readWrite:允许用户读写指定数据库
dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
root:只在admin数据库中可用。超级账号,超级权限

2.在mongodb shell 脚本用户登录

db.auth("用户名","密码")

好了,mongodb就先分享到这了.

mongoose

首先我们需要知道mongoose是一个模块,跟其他模块一样,用npm就能加到项目中了.确认了已经引入模块,以下代码用mongoose连接数据库

//引用mongoose模块
var mongoose = require('mongoose');
//连接数据库
mongoose.connect('mongodb://数据库登录用户名:数据库登录密码@数据库连接地址')
例:mongoose.connect('mongodb://:sam:123456@110.36.23.32:27017/samdb') //创建对象定义集合结构类型(其实就是表结构)
var testSchema=new mongoose.Schema({
userID:Number,
name:String,
comment:String
},{collection:'sam'});//collection:'sam'表示操作的集合 //操作数据库
var Cat=mongoose.model('Cat',testSchemas);
var kitty=new Cat({userID:1,name:"李四",comment:"路过路过"});
kitty.save(function(err){
if(err){
console.log(err);
data.err="保存失败";
}else{
data.err="保存成功";
}
});

express+mongodb+mongoose简单入门的更多相关文章

  1. [js高手之路]Node.js+jade+express+mongodb+mongoose+promise实现todolist

    promise主要是用来解决异步回调问题,其实还有好几种比promise更好的方案,后面再说,这节,我们先用promise来改造下,我以前写的一篇文章[js高手之路]javascript腾讯面试题学习 ...

  2. Nodejs&express+mongodb完成简单用户登录(即Nodejs入门)

    刚了解nodejs,发现nodejs配置起来不复杂,但也有很多需要注意的地方,今天就记录一下,以后也可拿出来看看. 要完成这个简单的示例,从零开始,走三步就行了. 一.搭建开发环境 二.创建项目(ex ...

  3. Express4+Mongodb超简单入门实例

    开始前,请确保mongodb已经能正常工作,安装教程:windows下MongoDB的安装及配置 , 请自行安装配置.下面进入正文: 第一步:命令行创建数据库.表,并插入一条数据 命令如下: //创建 ...

  4. express+mongodb+mongoose增删改查

    增加 修改 删除 数据库 这是一个前后端分离的项目前端项目地址:https://gitee.com/dingshao/express_qd.git后端项目地址:https://gitee.com/di ...

  5. nodejs+express+mongodb简单的例子

    简单的介绍下node+express+mongodb这三个东西.node:是运行在服务器端的程序语言,表面上看过去就是javascript一样的东西,但是呢,确实就是服务器语言,个人觉得在一定层次上比 ...

  6. Node+Express+MongoDB+Socket.io搭建实时聊天应用实战教程(一)--MongoDB入门

    前言 本文并不是网上流传的多少天学会MongoDB那种全面的教程,而意在总结这几天使用MongoDB的心得,给出一个完整的Node+Express+MongoDB+Socket.io搭建实时聊天应用实 ...

  7. 搭建简单的node+express+mongodb项目

    安装 首先要确保已经安装了 Node.js,接下来创建一个目录,然后进入此目录并将其作为当前工作目录. mkdir myapp cd myapp 通过 npm init 命令为应用创建一个 packa ...

  8. MongoDB最简单的入门教程之二 使用nodejs访问MongoDB

    在前一篇教程 MongoDB最简单的入门教程之一 环境搭建 里,我们已经完成了MongoDB的环境搭建. 在localhost:27017的服务器上,在数据库admin下面创建了一个名为person的 ...

  9. MongoDB最简单的入门教程之三 使用Java代码往MongoDB里插入数据

    前两篇教程我们介绍了如何搭建MongoDB的本地环境: MongoDB最简单的入门教程之一 环境搭建 以及如何用nodejs读取MongoDB里的记录: MongoDB最简单的入门教程之二 使用nod ...

随机推荐

  1. JavaScript作用域原理——预编译

    JavaScript是一种脚本语言, 它的执行过程, 是一种翻译执行的过程.并且JavaScript是有预编译过程的,在执行每一段脚本代码之前, 都会首先处理var关键字和function定义式(函数 ...

  2. WannaCry应急排查思路

    一.绪论: WannaCry是一款基于NSA的永恒之蓝漏洞(SMB-MS17-010)类似蠕虫似传播的一款勒索软件(Ransomware).一旦中招,该勒索病毒会对系统中的各种文件进行加密,比要求支付 ...

  3. 如何学习 cocos2d-x ?

    发表于 04/23/2014 作者 zrong — 24 条评论 ↓ 11,687 次查看 本站文章除注明转载外,均为本站原创或者翻译. 本站文章欢迎各种形式的转载,但请18岁以上的转载者注明文章出处 ...

  4. ffmpeg 推送、保存rtmp 流命令

    1.将文件当做直播送至live ffmpeg -re -i localFile.mp4 -c copy -f flv rtmp://server/live/streamName 2.将直播媒体保存至本 ...

  5. T-SQL创建作业

    /*1.--创建作业 */ /*--调用示例 --每月执行的作业 exec p_createjob @jobname='mm',@sql='select * from syscolumns',@fre ...

  6. 徐州网络赛A-Hard To Prepare【dp】【位运算】【快速幂】

    After Incident, a feast is usually held in Hakurei Shrine. This time Reimu asked Kokoro to deliver a ...

  7. python的tqdm模块

    Tqdm 是一个快速,可扩展的Python进度条,可以在 Python 长循环中添加一个进度提示信息,用户只需要封装任意的迭代器 tqdm(iterator). 根据要求安装依赖即可. 可以很方便的在 ...

  8. 阿里云 elastic search 重启 过程

    阿里云 es 重启 elasticsearch  重启 过程 实例变更中   53.13%   准备ECS资源 已完成节点数:4/4, 进度:100%     准备容器服务 进度:100%     变 ...

  9. 约会安排---hdu4553(线段树,麻烦的区间覆盖)

      题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4553 算是poj3667的加强版,建立两颗线段树,一个是DS区间,另一个是NS区间.那么根据题意, ...

  10. Python开发【模块】:torndb

    Torndb模块 概要:torndb是一个轻量级的基于MySQLdb封装的一个模块,其是tornado框架的一部分.其项目主页为:https://github.com/bdarnell/torndb ...