• MongoDB零基础入门到高级进阶-尚学堂


    一、MongoDB简介

    1、什么是MongoDB

    MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。

    MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。


    2、什么是NoSQL

    NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,是一项全新的数据库革命性运动,早期就有人提出,发展至2009年趋势越发高涨。NoSQL的拥护者们提倡运用非关系型的数据存储,相对于铺天盖地的关系型数据库运用,这一概念无疑是一种全新的思维的注入。

    NoSQL是否能代替关系型数据库?

    现在还不能,关系型数据库用于数据的持久化,而NoSQL主要用户数据的检索


    3、NoSQL数据库的分类

    3.1 键值(Key-Value)存储数据库

    这一类数据库主要会使用到一个哈希表,这个表中有一个特定的键和一个指针指向特定的数据。Key/value模型对于IT系统来说的优势在于简单、易部署。但是如果DBA只对部分值进行查询或更新的时候,Key/value就显得效率低下了。举例如redis


    3.2 列存储数据库

    这部分数据库通常是用来应对分布式存储的海量数据。键仍然存在,但是它们的特点是指向了多个列。这些列是由列家族来安排的。如:Cassandra, HBase, Riak。


    3.3 文档型数据库


    3.4 图形数据库


    二、MongoDB与关系型数据库的对比

    1、MongoDB与关系型数据库的术语对比

    clipboard


    2、数据存储对比

    clipboard


    3、RDBMS 与 MongoDB对应的术语

    RDBMS :related database management system

    clipboard


    三、MongoDB的数据类型

    clipboard


    四、MongoDB的下载和安装

    1、下载MongoDB

    下载地址:https://www.mongodb.com/download-center/community


    2、安装MongoDB

    1)上传 MongoDB安装包到linux系统中 /home/leyou文件夹下

    clipboard


    2)解压缩

    tar -xvf mongodb-linux-x86_64-rhel70-4.0.25.tgz


    3)将解压后的mongoDB目录移动到 /opt目录中并改名为 mongodb

    mv mongodb-linux-x86_64-rhel70-4.0.25 /opt/mongodb

    clipboard


    4)创建数据存储目录

    MongoDB的数据可以通过配置存储在任意目录下,在案例中存储在$MongoDB_HOME/data/db目录中,这个目录需要手动创建

    mkdir -p /opt/mongodb/data/db/


    5)创建日志存储目录

    MongoDB的日志数据可以通过配置存储在任意目录下,在案例中存储在$MongoDB_HOME/logs目录中,且日志文件名为mongodb.logs。这个目录和日志文件需要手工创建

    mkdir -p /opt/mongodb/logs/

    touch /opt/mongodb/logs/mongodb.log

    clipboard

    至此,MongoDB安装成功


    3、MongoDB的启动

    1) MongoDB的启动方式分为两种

    ①、前置启动

    ②、后置启动


    前置启动:

    MongoDB的默认启动方式为前置启动。所谓前置启动就是MongoDB启动进程后会占用当前终端窗口

    命令为:/opt/mongodb/bin/mongod --dbpath /opt/mongodb/data/db/


    后置启动

    所谓后置启动就是以守护进程的方式启动MongoDB。命令中的fork就是开启子进程。

    命令为:

    /opt/mongodb/bin/mongod --dbpath /opt/mongodb/data/db/ --logpath /opt/mongodb/logs/mongodb.log –fork


    配置启动

    命令启动并不适合管理,毕竟每次输入命令都需要考虑各参数的配置。可以通过配置文件来配置启动参数,这样在管理MongoDB上比较方便

    ①、编辑配置文件

    mkdir /opt/mongodb/etc/

    vi /opt/mongodb/etc/mongodb.conf

    dbpath=/opt/mongodb/data/db/

    logpath=/opt/mongodb/logs/mongodb.log

    logappend=true

    bind_ip_all=true

    port=27017

    fork=true

    port是端口,27017即默认的MongoDB端口号。

    bind_ip_all是绑定所有IP,即所有客户端都可以访问


    ②、启动

    /opt/mongodb/bin/mongod --config /opt/mongodb/etc/mongodb.conf

    或者

    /opt/mongodb/bin/mongod -f /opt/mongodb/etc/mongodb.conf


    4、MongoDB关闭

    1)前置启动关闭,使用 ctrl+C

    如果我们的启动方式是前置启动,那么直接使用快捷键ctrl+c就可以关闭mongoDB。这种关闭方式会等待当前进行中的操作完成,所以是安全的关闭方式


    2)使用kill命令关闭

    我们可以通过Linux的kill命令结束mongoDB进程,然后删除data/db目录中的mongod.lock文件,否则下次无法启动,但是此方法不建议使用,因为会造成数据损坏现象


    3)使用mongoDB的函数关闭

    连接到MongoDB服务后,切换到admin库,并使用命令关闭服务。

    use admin

    db.shutdownServer()

    db.runCommand(“shutdown”)


    4)使用mongod的命令关闭

    mongod --shutdown --dbpath <path>

    mongod命令的shutdown选项能安全的关闭 MongoDB服务

  • 相关阅读:
    【个人博客设计】
    复杂多边形光栅化算法
    xmake 描述语法和作用域详解
    协程分析之context上下文切换
    tbox协程使用之切换与等待
    记boost协程切换bug发现和分析
    跨平台自动构建工具v1.0.2 发布
    xmake从入门到精通9:交叉编译详解
    xmake从入门到精通9:交叉编译详解
    跨平台c开发库tbox:内存库使用详解
  • 原文地址:https://www.cnblogs.com/houchen/p/14909212.html
Copyright © 2020-2023  润新知