mongoDB从入门到实战最全小白教程

本文涉及的产品
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
简介: mongoDB从入门到实战最全小白教程
mongoDB入门教程一:下载安装和环境配置、连接运行

MongoDB 是一个基于分布式文件存储的数据库, 是一个介于关系数据库和非关系数据库之间的产品。很久之前就已经学习过这个知识点,现在终于在工作之中用到,又重温了一遍,有点感到小幸运,庆幸自己还记得入门的时候的一些操作,现在用起来才不至于生疏。

MongoDB的下载和安装

1:windows的 64 位系统的预编译二进制包安装下载

2:下载之后点击安装

3:点击custom设置安装目录。

4:记住自己安装的路径

C:\Program Files\MongoDB\Server\4.0\

5:在 C 盘安装了 mongodb

6:点击下一步,安装完成

现在让我们创建一个 data 的目录然后在 data 目录里创建 db 目录。

MongoDB运行数据库和日志的配置

1:打开cmd(右键管理员身份打开),进入安装路径底下,新建一个data文件夹

mkdir c:\ data\db
mkdir c:\ data\log

于是在c盘底下简历了数据库和日志

2:运行:返回上一级,找到安装路径

cd/

3:从 MongoDB 目录的 bin 目录中执行 mongod.exe 文件。

通过 window 的资源管理器中找到一开始安装的路径

4:通过cmd进入这个路径、

C:\Program Files\MongoDB\Server\4.0\bin

执行命令

mongod.exe –dbpath c:\data\db

5:成功界面

服务器搭建完毕,成功提示,注意data的文件位置是c:\data\db

开始连接连接MongoDB

1:之前的窗口不变

再打开一个cmd窗口(右键以管理员身份)来运行mongo.exe。

同样打开bin文件,执行mongo.exe

cd\
cd Program Files\MongoDB\Server\4.0\bin

2:输入连接命令

mongo

我们的连接链接:

connecting to: mongodb://127.0.0.1:27017

来到浏览器测试一下

到这一步数据库已经成功跑起来了,接下来就是操作一些命令向数据库里面插入数据等并且可以看到自己对数据库的一系列操作的结果了。

3:OK

完全安装并可以运行MongoDB了

我们可以看到创建的数据库文件夹里面自动生成的文件

注意:如果:链接失败

执行mongo.exe失败怎么办??

执行mongod

查找到了原因,这个错误中说找不到C:\data\db这个文件夹


mongoDB入门教程二:推荐一款好用的mongoDB可视化工具Robo 3T

MongoDB的环境搭建完成之后,连接上了数据库之后,这个时候对数据库的一些操作是枯燥无味的,需要一款辅助的工具,也就是可视化的工具,对于每一步操作都可以看见实际的操作效果。

继续来看mongoDB可视化工具

1:下载安装和使用Robo 3T:

2:我安装在了D盘里面,操作默认下一步,直到完成安装。

3:完成安装之后打开可视化工具

点击Create,点击保存按钮

连接默认地址

连接之后可以看到默认的界面,默认的配置数据库,ok,可视化工具也准备就绪了,下一步就是开始操作数据库并且查看效果了。

mongoDB入门教程三:数据库的创建和删除(增删改查)基本命令

1:创建数据库

use student

打开可视化数据库工具,可以看到创建的student数据库

2:必须插入一个数据。

数据库中不能直接插入数据,只能往集合(collections)中插入数据。

db.student.insert({"name":"wangxiaoting"});

打开打开可视化数据库工具,可以看到插入的数据

注意

创建数据库之后插入一条数据,才会显示在可视化工具里面

继续创建两个数据库,创建一个teacher 和firend

3:显示当前的数据集合(mysql 中叫表)

4:删除数据库,删除当前所在的数据库

db.dropDatabase();

打开可视化工具,右击刷新,可以看到teacher的库已经删除

5:查看所有数据库列表,

show dbs

这个是一开始进入的时候里面是默认的数据库

这是刚刚自己创建的两个库


mongoDB入门教程四:安装Node+express环境支撑

mongoDB搭建完成之后,可以做很多小的项目,常见的又搭建简易的登陆系统,搭建博客等等,最重要的支持就是要用到Node+express,所以小婷顺便把这些也写一写,接下来要做的是一个基于mongoDB+Node+express搭建的登陆注册的后台管理系统流程示例。

1:安装node

端开发框架和环境都是需要 Node.js ,先安装node.js开发环境,vue的运行是要依赖于node的npm的管理工具来实现,下载https://nodejs.org/en/,安装完成之后,打开cmd开始输入命令。(我用的是win10系统,所以需要管理员权限,右键点击以管理员身份运行cmd),不然会出现很多报错。

2:查看node的版本号

下载好node之后,以管理员身份打开cmd管理工具,,输入 node -v ,回车,查看node版本号,出现版本号则说明安装成功。

输入命令: node -v

3:安装淘宝npm镜像

进入D盘(当然可以根据你自己的选择来安装路径)全局安装镜像。由于npm是国外的,使用起来比较慢,我们这里使用淘宝的cnpm镜像来安装vue.

淘宝的cnpm命令管理工具可以代替默认的npm管理工具。

输入命令:npm install -g cnpm --registry=https://registry.npm.taobao.org

安装成功之后显示如下

4:开始安装express插件模块

进入D盘,输入命令,全局安装express,我们知道-g也就是global全局的意思。

npm install -g express-generator

全局安装完成之后,可以看到D盘里面多出的express文件

5:创建一个项目

创建项目的命令      
express myapp

创建完成之后,可以看到d盘多出一个项目

6:进入项目,在项目里面安装依赖

cd myapp
npm install


我们可以看到项目里面多了两个依赖文件

7:启动项目

npm start

8:安装成功

打开浏览器,输入http://localhost:3000/。可以看到这个界面,说明安装成功。


mongoDB入门教程五:搭建一个简单的登陆注册界面

一:数据库开启开始连接连接MongoDB

1:打开一个cmd窗口(右键以管理员身份)来运行mongo.exe。同样打开bin文件,执行mongo.exe

cd\
cd Program Files\MongoDB\Server\4.0\bin

2:输入连接命令

mongo

3:我们的连接链接:

connecting to: mongodb://127.0.0.1:27017

来到浏览器测试一下

当然了,可以设置每次开机自动连接数据库。

二:项目创建及其运行

1:初始化一个项目

进入D盘,使用命令,开始创建一个项目

d:
express loginproject  -e

项目创建成功

我们可以看见D盘多了一个刚刚的项目文件夹

2:执行提示命令,进入项目,在项目里面安装相关依赖,把项目跑起来

cd loginproject
npm install
npm start 

可以发现项目里面多出了两个自动生成的依赖文件

启动命令:npm start

3:打开浏览器,输入:http://localhost:3000/,可以访问到初始项目

三:打开项目,了解项目目录开始写页面代码

1:查看项目自动生成的目录

简单的介绍一下啊

项目创建成功之后,生成四个文件夹,主文件app.js与配置信息文件packetage.json
bin是项目的启动文件,配置以什么方式启动项目,默认 npm start
public是项目的静态文件,放置js css img等文件
routes是项目的路由信息文件,控制地址路由
views是视图文件,放置模板文件ejs或jade等(其实就相当于html形式文件啦~)
express这样的MVC框架模式,是一个Web项目的基本构成。


2:开始写一些简单的界面代码,在views下面建一些需要用到的界面 ,所有代码就不一一的展示了,有兴趣的可以去小婷的github上面下载一下。

3:新建一个models文件夹,在该文件夹下新建user.js并且写好代码

var mongoose = require("mongoose");  //  顶会议用户组件
var Schema = mongoose.Schema;    //  创建模型
var userScheMa = new Schema({
    userid: String,
    password: String
}); //  定义了一个新的模型,但是此模式还未和users集合有关联
exports.user = mongoose.model('users', userScheMa); //  与users集合关联

4::在routes目下的index.js配置路由:

var express = require('express');
var router = express.Router();
var mongoose = require('mongoose');
var user = require('../models/user').user;
mongoose.connect('mongodb://localhost/admin');
/* GET home page. */
router.get('/', function(req, res) {
      res.render('index', { title: 'index' });
});
/*login*/
router.get('/login', function(req, res) {
    res.render('login', { title: 'login' });
});
/*logout*/
router.get('/logout', function(req, res) {
      res.render('logout', { title: 'logout' });
});
/*hompage*/
router.post('/homepage', function(req, res) {
    var query_doc = {userid: req.body.userid, password: req.body.password};
    (function(){
        user.count(query_doc, function(err, doc){
            if(doc == 1){
                console.log(query_doc.userid + ": login success in " + new Date());
                res.render('homepage', { title: 'homepage' });
            }else{
                console.log(query_doc.userid + ": login failed in " + new Date());
                res.redirect('/');
            }
        });
    })(query_doc);
});
module.exports = router;

好了

四:在mongoDB数据库里面创建用户名和密码
use admin
//插入用户名和密码
db.users.insert({userid:"super",password:"123"})
//查看所有
db.users.find()

在插入一个用户名和密码,这两个用户名密码都可以登陆。

db.users.insert({userid:"admin",password:"123456"})

打开可视化工具可以看到创建的用户名密码

五:一切准备就绪,回到浏览器,查看效果

从登陆界面登陆进去,再退出来,一套流程就是如此。css就不写了,时间不多,如果感兴趣的可以自己写。

相关实践学习
MongoDB数据库入门
MongoDB数据库入门实验。
快速掌握 MongoDB 数据库
本课程主要讲解MongoDB数据库的基本知识,包括MongoDB数据库的安装、配置、服务的启动、数据的CRUD操作函数使用、MongoDB索引的使用(唯一索引、地理索引、过期索引、全文索引等)、MapReduce操作实现、用户管理、Java对MongoDB的操作支持(基于2.x驱动与3.x驱动的完全讲解)。 通过学习此课程,读者将具备MongoDB数据库的开发能力,并且能够使用MongoDB进行项目开发。   相关的阿里云产品:云数据库 MongoDB版 云数据库MongoDB版支持ReplicaSet和Sharding两种部署架构,具备安全审计,时间点备份等多项企业能力。在互联网、物联网、游戏、金融等领域被广泛采用。 云数据库MongoDB版(ApsaraDB for MongoDB)完全兼容MongoDB协议,基于飞天分布式系统和高可靠存储引擎,提供多节点高可用架构、弹性扩容、容灾、备份回滚、性能优化等解决方案。 产品详情: https://www.aliyun.com/product/mongodb
相关文章
|
7月前
|
NoSQL Java 测试技术
|
3月前
|
NoSQL MongoDB
MongoDB入门-sort和投影
这篇文章介绍了MongoDB中的排序(sort)和投影(projection)操作,通过示例代码展示了如何使用这些功能来控制查询结果的排序顺序和返回的字段。
38 3
MongoDB入门-sort和投影
|
3月前
|
NoSQL MongoDB
MongoDB入门-MongoDB的CURD语句练习
这篇文章提供了MongoDB的CURD操作的练习,涵盖了插入、查询、更新和删除数据的基本命令,并通过具体示例展示了如何在MongoDB中执行这些操作。
47 2
|
2月前
|
存储 NoSQL MongoDB
MongoDB入门级别教程全(Windows版,保姆级教程)
一份全面的MongoDB入门级教程,包括在Windows系统上安装MongoDB、使用MongoDB Shell和Compass GUI进行数据库操作,以及MongoDB的基本数据类型和查询技巧。
83 2
MongoDB入门级别教程全(Windows版,保姆级教程)
|
2月前
|
存储 JSON NoSQL
MongoDB Compass 的教程
这篇文章提供了MongoDB Compass的基本使用教程,包括如何建立数据库连接、创建和删除数据库、插入和修改文档数据,以及执行聚合查询来分析和排序数据。
282 0
MongoDB Compass 的教程
|
6月前
|
NoSQL 前端开发 MongoDB
[保姆级教程]Windows安装MongoDB教程
【6月更文挑战第4天】该内容是关于MongoDB的安装包下载及安装步骤指南。首先,访问网址 <a href="https://www.mongodb.com/try" target="_blank">https://www.mongodb.com/try</a> 进入官网,选择MongoDB Community Edition(社区版)。接着,挑选合适的版本和系统平台,推荐下载zip压缩包。下载后,进行安装,依次点击“Next”同意协议,选择自定义安装路径,然后继续安装直至完成。
663 0
|
2月前
|
SQL NoSQL MongoDB
一款基于分布式文件存储的数据库MongoDB的介绍及基本使用教程
一款基于分布式文件存储的数据库MongoDB的介绍及基本使用教程
51 0
|
2月前
|
存储 JSON NoSQL
MongoDB 教程
10月更文挑战第9天
44 0
|
4月前
|
JavaScript NoSQL 前端开发
|
4月前
|
NoSQL BI 数据处理
【超实用攻略】MongoDB 聚合框架:从入门到精通,带你解锁数据处理新姿势!
【8月更文挑战第24天】MongoDB是一款以其灵活性和高性能闻名的NoSQL数据库。其强大的聚合框架采用管道式处理,允许用户定义多个数据处理阶段如过滤、分组等。本文通过示例数据库`orders`和`products`,演示如何利用聚合框架计算各产品的总销售额。示例代码展示了使用`$lookup`连接两集合、`$unwind`打平数组及`$group`按产品ID分组并计算总销售额的过程。这突显了聚合框架处理复杂查询的强大能力,是进行数据分析和报表生成的理想选择。
58 3