05 Docker 安装常用软件 (mongoDB)

目录

[1. mongoDB简介](#1. mongoDB简介)

[1.1 mongodb的优势](#1.1 mongodb的优势)

[2. mongodb的安装](#2. mongodb的安装)

[2.1 创建数据文件夹](#2.1 创建数据文件夹)

[2.2 备份+日志](#2.2 备份+日志)

[2.3 配置文件夹](#2.3 配置文件夹)

[2.4 创建两个文件](#2.4 创建两个文件)

[---> 2.4.1 配置如下:](#---> 2.4.1 配置如下:)

[2.5 拉取mongodb](#2.5 拉取mongodb)

[2.6 运行容器](#2.6 运行容器)

[2.7 进入mongodb容器](#2.7 进入mongodb容器)

[---> 2.7.0 高版本(6.0)以上是这样的 , 旧版的没研究](#---> 2.7.0 高版本(6.0)以上是这样的 , 旧版的没研究)

[---> 2.7.1 查询版本](#---> 2.7.1 查询版本)

[---> 2.7.2 进入amdin数据库](#---> 2.7.2 进入amdin数据库)

[---> 2.7.3 创建超级权限root角色的用户](#---> 2.7.3 创建超级权限root角色的用户)

[---> 2.7.4 认证登录db.auth('用户名','密码'),打印1则代表认证通过](#---> 2.7.4 认证登录db.auth('用户名','密码'),打印1则代表认证通过)

[---> 2.7.5 没有这个数据库会创建一个。](#---> 2.7.5 没有这个数据库会创建一个。)

[---> 2.7.6 再试一次 换个权限](#---> 2.7.6 再试一次 换个权限)

[3. 开放端口 27017端口](#3. 开放端口 27017端口)

[4. 使用可视化工具测试](#4. 使用可视化工具测试)

[-> 4.1 使用navicat进行连接](#-> 4.1 使用navicat进行连接)

[-> 4.2 mongo compass 原生](#-> 4.2 mongo compass 原生)

[5. 总结:](#5. 总结:)


1. mongoDB简介

1.1 mongodb的优势

  1. 高可扩展性:MongoDB是一种分布式数据库,因此可以很容易地在多个服务器上进行扩展。可以通过增加节点、分片和副本集等方式来实现高可扩展性。

  2. 数据模型的灵活性:MongoDB采用文档式存储方式,可以存储各种形式的数据。这意味着可在同一数据库中存储多种类型的数据,开发人员能更快速执行数据模型的迭代。

  3. 高性能:MongoDB能够提供高性能的读写速度,支持高并发请求。同时,MongoDB还支持自动分片和负载均衡,从而可以更加灵活地进行数据管理。

  4. 易于使用:MongoDB的查询语言非常直观,并且能够使用类似SQL的语法进行查询。此外,MongoDB还提供了各种工具和驱动程序,方便开发人员进行数据操作和管理。

  5. 可扩展性和灵活性的结合:MongoDB提供可扩展性和灵活性的完美结合。这意味着可以根据应用程序的需要,灵活地扩展和调整数据库,同时也可以灵活地进行数据建模。

2. mongodb的安装

2.1 创建数据文件夹

复制代码
mkdir -p /usr/local/src/docker/mongodb/data

2.2 备份+日志

复制代码
mkdir -p /usr/local/src/docker/mongodb/backup

2.3 配置文件夹

复制代码
mkdir -p /usr/local/src/docker/mongodb/conf

2.4 创建两个文件

复制代码
touch /usr/local/src/docker/mongodb/conf/mongodb.conf

touch /usr/local/src/docker/mongodb/backup/log.txt

---> 2.4.1 配置如下:

cs 复制代码
#数据库数据存放目录
dbpath=/usr/local/src/docker/mongodb/data
#数据库日志存放目录
logpath=/usr/local/src/docker/mongodb/log.txt
#以追加的方式记录日志
logappend = true
#端口号 默认为27017
port=27017 
#以后台方式运行进程
fork=true 
#开启用户认证
auth=true

2.5 拉取mongodb

复制代码
docker pull mongo

2.6 运行容器

复制代码
docker run -d --name mongodb -p 27017:27017 \
--restart=always \
-v /usr/local/src/docker/mongodb/data:/data/db \
-v /usr/local/src/docker/mongodb/backup:/data/backup \
-v /usr/local/src/docker/mongodb/conf:/data/configdb \
-d mongo --auth

2.7 进入mongodb容器

---> 2.7.0 高版本(6.0)以上是这样的 , 旧版的没研究

低版本的 可以百度搜索: docker 进入mongodb容器

复制代码
docker exec -it mongodb mongosh

---> 2.7.1 查询版本

复制代码
db.version()

---> 2.7.2 进入amdin数据库

复制代码
use admin

---> 2.7.3 创建超级权限root角色的用户

或者userAdminAnyDatabase 等角色权限比较大的用户,

我创建的是拥有超级权限root角色的用户root

用户名:pingzhuyan,密码:123456,角色:root,数据库:admin

cs 复制代码
db.createUser({user:'pingzhuyan',pwd:'123456',roles:[{role:'root',db:'admin'}]})

---> 2.7.4 认证登录db.auth('用户名','密码'),打印1则代表认证通过

cs 复制代码
db.auth('pingzhuyan','123456')

---> 2.7.5 没有这个数据库会创建一个。

cs 复制代码
use pzyMongodb

---> 2.7.6 再试一次 换个权限

cs 复制代码
db.createUser({user:'pingzhuyan',pwd:'123456789',roles:[{role:'dbOwner',db:'pzyMongodb'}]})
db.auth('pingzhuyan','123456789')

3. 开放端口 27017端口

云服务器打开安全组(防火墙) 添加端口号 27017

本地虚拟机 关闭防火墙

windows安装的无所谓

4. 使用可视化工具测试

-> 4.1 使用navicat进行连接

-> 4.2 mongo compass 原生


5. 本文总结

安装结束, 下文是基础使用

创建库 集合 增删改查等

相关推荐
济61713 分钟前
linux 系统移植(第六期)--Uboot移植(5)--bootcmd 和 bootargs 环境变量-- Ubuntu20.04
java·前端·javascript
温暖小土23 分钟前
深度解析 Spring Boot 自动配置:从原理到实践
java·springboot
Marktowin27 分钟前
Mybatis-Plus更新操作时的一个坑
java·后端
R-sz30 分钟前
如何将json行政区划导入数据库,中国行政区域数据(省市区县镇乡村五级联动)
java·数据库·json
比奇堡派星星42 分钟前
Linux OOM Killer
linux·开发语言·arm开发·驱动开发
定仙游45344 分钟前
Java StringBuilder 超详细讲解
java
haiyu柠檬1 小时前
IDEA和VSCode中好用的插件推荐
java·vscode·intellij-idea
怜淇1 小时前
docker拉取openjdk8:jre失败
java·docker·容器
降临-max1 小时前
JavaWeb企业级开发---Mybatis
java·开发语言·笔记·学习·mybatis
wifi chicken1 小时前
Linux 内核开发之单链表的增删查改详解
linux·数据结构·链表