MongoDB简介与安装步骤

1、简介

1.1 说明

  • 官方说法

    MongoDB是一个文档数据库,旨在简化开发和扩展。

    image-20220104232652408

  • 百度百科

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

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

  总结: mongoDB 是一个非关系型文档数据库

1.2 文档数据库

  MongoDB中的记录是一个文档,它是由字段和值对组成的数据结构。MongoDB文档类似于JSON对象。字段的值可以包括其他文档,数组和文档数组。

2、特点

  • 面向集合存储,易存储对象类型的数据
  • 支持查询,以及动态查询
  • 支持RUBY,PYTHON,JAVA,C++,PHP,C#等多种语言
  • 文件存储格式为BSON(一种JSON的扩展)
  • 支持复制和故障恢复和分片
  • 支持事务
  • 索引 聚合 关联…

3、应用场景

  • 游戏应用:使用云数据库MongoDB作为游戏服务器的数据库存储用户信息。用户的游戏装备、积分等直接以内嵌文档的形式存储,方便进行查询与更新。
  • 物流应用:使用云数据库MongoDB存储订单信息,订单状态在运送过程中会不断更新,以云数据库MongoDB内嵌数组的形式来存储,一次查询就能将订单所有的变更读取出来,方便快捷且一目了然。
  • 社交应用:使用云数据库MongoDB存储用户信息以及用户发表的朋友圈信息,通过地理位置索引实现附近的人、地点等功能。并且,云数据库MongoDB非常适合用来存储聊天记录,因为它提供了非常丰富的查询,并在写入和读取方面都相对较快。
  • 视频直播:使用云数据库MongoDB存储用户信息、礼物信息等。
  • 大数据应用:使用云数据库MongoDB作为大数据的云存储系统,随时进行数据提取分析,掌握行业动态。

4、安装

4.1 传统方式安装

4.1.1 下载mongodb

https://www.mongodb.com/try/download/community

image-20220104233405915

根据自己的环境下载对应的版本,我下载的是Linux版本的

4.1.2 将安装包上传到linux系统中并解压

image-20220104233449793

tar -zxvf mongodb-linux-x86_64-rhel70-5.0.5.tgz -C /usr/local

image-20220104233555239

4.1.3 查看安装目录

bin目录 用来存放启动mongoDB的服务以及客户端链接的脚本文件等

image-20220104233633538

4.1.4 启动MongoDB服务

  • ./mongod --port=27017 --dbpath=…/data --logpath=…/logs/mongo.log
    --port 指定服务监听端口号 默认为 27017
    --dbpath 指定 mongodb 数据存放目录 启动要求目录必须存在
    --logpath 指定 mongodb 日志文件存放位置
./mongod --port=27017 --dbpath=../data --logpath=../logs/mongo.log --fork

image-20220104233754498

注意: 由于指定日志文件因此启动时日志输出到日志中终端不显示任何日志

4.1.5 客户端连接

./mongo --port=27017

image-20220104233832862

4.2 Docker方式安装

4.2.1 拉取mongodb镜像

docker pull mongo:latest

查看下载好的镜像

image-20220104234002141

4.2.2 运行mongo镜像

docker run --name mongo -d -p 27017:27017 mongo:latest

image-20220104234053595

4.2.3 进入mongo容器

docker exec -it mongo /bin/bash

image-20220104234135385

posted @   别团等shy哥发育  阅读(20)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示