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. 本文总结

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

创建库 集合 增删改查等

相关推荐
运维小贺几秒前
各服务器厂商调整BIOS睿频教程
linux·运维·服务器·性能优化
人生匆匆4 分钟前
docker进入启动失败的容器
运维·docker·容器
特种加菲猫21 分钟前
指尖上的魔法:优雅高效的Linux命令手册
linux·笔记
凯基迪科技36 分钟前
exe软件壳的分类----加密保护壳
java
★Orange★39 分钟前
Linux Kernel kfifo 实现和巧妙设计
linux·运维·算法
wuxuanok1 小时前
Web后端开发-分层解耦
java·笔记·后端·学习
bemyrunningdog1 小时前
Mock数据
linux·运维·ubuntu
是阿建吖!1 小时前
【Linux | 网络】网络编程套接字
linux·网络
kyle~1 小时前
C/C++字面量
java·c语言·c++
neoooo1 小时前
别慌,Java只有值传递——一次搞懂“为啥我改了它还不变”!
java·后端·spring