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

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

创建库 集合 增删改查等

相关推荐
城南云小白11 分钟前
Linux网络服务只iptables防火墙工具
linux·服务器·网络
从心归零12 分钟前
sshj使用代理连接服务器
java·服务器·sshj
咩咩大主教13 分钟前
C++基于select和epoll的TCP服务器
linux·服务器·c语言·开发语言·c++·tcp/ip·io多路复用
Zww089140 分钟前
docker部署个人网页导航
运维·docker·容器
Flying_Fish_roe40 分钟前
linux-网络管理-网络配置
linux·网络·php
PeterJXL42 分钟前
Docker-compose:管理多个容器
运维·docker·容器
FuLLovers43 分钟前
2024-09-13 冯诺依曼体系结构 OS管理 进程
linux·开发语言
一个诺诺前行的后端程序员1 小时前
springcloud微服务实战<1>
spring·spring cloud·微服务
海王正在撒网1 小时前
用 Docker 部署 Seafile 社区版
运维·docker·容器
IT毕设梦工厂1 小时前
计算机毕业设计选题推荐-在线拍卖系统-Java/Python项目实战
java·spring boot·python·django·毕业设计·源码·课程设计