mongodbdocker(mongodbdocker安装)

本篇文章给大家谈谈mongodbdocker,以及mongodbdocker安装对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

MongoDB数据备份还原,及docker中MongoDB备份还原

在Mongodb中我们使用mongodump命令来备份MongoDB数据。该命令可如旁闷以导出所有数据到指定目录中。

mongodump命令可以通过参数指定导出的数据量级转存的服务器。

mongodump命令脚本语法如下:

参数说明渣弯:

其他参数参考:

2)示例:

如果没有设置账户密码,或者端口都是默认的27017,则可以省略参数。如:

mongodb使用 mongorestore 命令来启伍恢复备份的数据。

1)语法:

mongorestore命令脚本语法如下:

参数:

2)示例:

例子,此时有一个mongo容器

方法一:

直接进入docker容器,一步一步还原。

还原一样,步骤复制本地到容器中,进入容器中,还原复制过来的备份文件。

方法二:

一步到位备份:

还原:

[img]

MongoDB 副本集物理备份和恢复

MongoDB 部署在docker里,MongoDB的数据在创建docker时,通过逻辑卷进行管理和存储。当数据量过大(TB级)时,通过mongodump的逻辑备份方式,效率上已经能满足需求,所以虚老需要提供物理备份的迅梁功能,本文主要整理MongoDB副本集通过磁盘快照的进差昌升行物理备份和恢复的方法。

找到MongoDB副本集的hidden节点,在该节点上执行备份操作

LVM原理及配置

Restore a Replica Set from MongoDB Backups

MongoDB入门实操《一》

什么是MongoDB

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

MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。

如何搭建MongoDB服务

step1: docker pull mongo

step2: docker run -d --name mongotest -p 27017:27017 mongo --auth (推荐)

或者: docker run -d --name mongotest -p 27017:27017 mongo

备注:--auth 表示需要密码才可以访问容器服务

无--auth 可以直接访问

step3: 进入容器 docker exec -it mongotest bash 或者 通过dashboard 进入(推荐)

Mongo的常规使用

在容器里面操作使用Mongo数据库:

总结:今天的文章主要介绍了什么是Mongo DB, Mongo DB服务的构建及Mongo的一些基础操作命令,如创建用户,用户授权,创建数据,显示数据,创建集合,显戚滑示集合,集合数据查询,集合删除等(并对比着mysql命令进行了解释),希望对新手有帮助。

MongoDB无法连接/认证失败

问题:

1. 在开发工具总配置文件中配置URI后,启动程序无法连接mongodb,uri如下:

    spring.data.mongodb.uri : mongodb://name:password@ip:27017/dbname ,

但是如下配置(无用户名和密码)可以正常连接,uri如下:

   spring.data.mongodb.uri : mongodb://ip:27017/dbname

2. MongoVUE客户端输入用户名和密码连接mongodb失败,不输入用户名和密码时连接成功。

解决:

修改配置文件:

vi /etc/mongod.conf  ,找到#security: 取消注释,修改为:

security:

    authorization: enabled #注意缩进,缩进参照配渗稿颂置文件其他配置,要不有可能会启动不成                                               功。

重启mongodb:

docker stop container_id

docker start container_id   #container_id : mongodb对应的id

结果:

1. 启动项目时可以正常连接mongodb成功

2. 如果mongovue客户端连接还是不成功,可能是客户端和服务端版本问题,请自行百度解       丛郑 决。

说明:

此类敬蚂的问题没有标准解决方案,因为个人的操作执行命令的过程都不一样,如果未能解决你的问题,请再深入研究,此方案针对本人的问题已解决。以上过程省略了创建用户的过程,此过程自行操作。

手把手超详细Docker部署MongoDB集群

mongodb 集群搭建的方式有三种:

首先我们先来了解一下Mongo集群的概念,Mongo集群有3个主要组件

ConfigServer:在集群中扮演存储整个集群的配置信息,负责配置存储,如果需要高可用的ConfigServer那么需要3个节点。

Shard:分片,存茄局储真实的数据,每一个Shard分片都负责存储集群中的数据,例如一个集群有3个分片,然后我们定义分片规则为哈希,那么整个集群的数据就会(分割)到3个分片中的某一个分片,那么分片是特别重要的,如果集群中的一个分片全部崩溃了那么集群将不可用,所以我们要保证集群的高可用,那么我们需要一个分片配置3个节点,2个副本集一个仲裁节点,仲裁节点类似于Redis的哨兵模式,如果发现主节点挂了那么让另一个副本集进行数据存储。

Mongos:Mongos我们可以理解为整个集群的入口,类似于Kafka的Broker代理,也就是客户端,我们通过客户端连接集群进行查询。

下面是MongoDB的官方集群架构图,我们看到Mongos是一个路由,他们的信息都存储在ConfigServer中,我们通过Mongos进行添加,然后根据条件将数据进行分片到分片的副本集中

首先我们搭建两个config-server

创建两个config-server的配置文件

然后配置文件中配置端口

然后启动容器

然后进入容器初始化

如果ok为1表示成功

下面我们给每个server创建2个分片

创建挂载文件

创建配置文件

然后启动容器

进入第一个分片

进入第二个分片

创建挂载文件

然后启动Mongo

mongo添加分片组

新建数据启用分片

那么我们先来总结一下我们搭建一个高可用集群需要多少个Mongo

mongos : 3台

configserver : 3台

shard : 3片

每一片shard 分别 部署两个副本集和一个仲裁节点 : 3台

那么就是 3 + 3 + 3 * 3 = 15 台,我这里演示采用3台服务器

114.67.80.169 4核16g 部署一个configserver,一个mongos,2个分片组

182.61.2.16 2核4g 部署一个configserver,一个mongos,1个分片组

106.12.113.62 1核2g 部署一个configserver,一个mongos,不搭建分片组

由于此处服务器原因所以不是均衡分布,请根据自身实际情况搭建

我们先来搭建ConfigServer,因为我们知道搭建的话一定要高可用而且一定要权限这里mongo之间通信采用秘钥文件,所以我们先进行生成

创建挂载文件目录

写入配置文件

然后颤岩让生成keyFile

文件如下,我们,之后我们所以key都采用这个(请采用自己生成的key)

写入key文件

然后启动config-server1容器

创建挂载文件目录

写入配置文件

写入配置文件

文件如下,我们,之后我们所以key都采用这个(请采用自己生成的key)

写入key文件

然后启动config-server2容器

创建挂载文件目录

写入配置文件

文件如下,我们,之后我们所以key都采用这个(请采用自己生成的key)

写入key文件

然后启动config-server3容器

进入第一台容器

输入

如果返回ok则成功

然后我们创建用户

由于mongos是客户端,所以我们先搭建好config以及shard之枣颂后再搭建mongos。

在同一台服务器上初始化一组分片

创建挂载文件

配置配置文件

创建keyfile

运行shard1分片组

并且制定第三个副本集为仲裁节点

返回ok后创建用户

然后退出,分片组1搭建完成

在同一台服务器上初始化一组分片

创建挂载文件

配置配置文件

创建keyfile

运行shard2分片组

并且制定第三个副本集为仲裁节点

返回ok后创建用户

然后退出,分片组2搭建完成

在同一台服务器上初始化一组分片

创建挂载文件

配置配置文件

创建keyfile

运行shard3分片组

并且制定第三个副本集为仲裁节点

返回ok后创建用户

然后退出,分片组3搭建完成

创建配置文件

填入配置文件,这里我们删除了认证的信息,因为mongos是不能设置认证的,他也是用的前面使用的密码即可,如configserver的密码

创建keyfile

运行mongos1

创建配置文件

填入配置文件,这里我们删除了认证的信息,因为mongos是不能设置认证的,他也是用的前面使用的密码即可,如configserver的密码

创建keyfile

运行mongos2

创建配置文件

填入配置文件,这里我们删除了认证的信息,因为mongos是不能设置认证的,他也是用的前面使用的密码即可,如configserver的密码

创建keyfile

运行mongos3

进入第一台mongos

先登录(使用前面设置的root用户密码)

进行配置分片信息

全部返回ok则成功

去其他两台mongos执行

mongos2

mongos3

创建用户

插入数据

openssl rand -base64 756 mongo.key

清空server1两个分片数据

清空server2两个分片数据

MongoDB Docker启动

在Docker中启动MongoDB,可以运行下面的命令:

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

也可以将数友历猜据映射到卷烂洞中:

docker run -d -p 27017:27017 --name example-mongo -v mongo-data:/data/db mongo:latest

还可以从另外一个容器连接:

这需要加入相好型同的docker网路:

docker network create mongo-network docker run -d --network mongo-network --name example-mongo mongo:latest

关于mongodbdocker和mongodbdocker安装的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

标签列表