当前位置: 首页 > news >正文

金昌网站建设许昌网络推广外包

金昌网站建设,许昌网络推广外包,旅行社营业部管理办法,湛江建设局网站#作者:任少近 文章目录 前言:Mongodb版本升级升级步骤环境1.1环境准备1.2standalone升级1.3分片、副本集升级 前言:Mongodb版本升级 在开始升级之前,请参阅 MongoDB下个版本中的兼容性变更文档,以确保您的应用程序和…

#作者:任少近

文章目录

  • 前言:Mongodb版本升级
  • 升级步骤
  • 环境
    • 1.1环境准备
    • 1.2standalone升级
    • 1.3分片、副本集升级

前言:Mongodb版本升级

在开始升级之前,请参阅 MongoDB下个版本中的兼容性变更文档,以确保您的应用程序和部署与下个MongoDB兼容。在开始升级之前,请解决部署中的不兼容问题。
在升级 MongoDB 之前,请务必在临时环境中测试,然后再将升级部署到生产环境。
以下举例从7升级到8

升级步骤

1.首先确保是副本集状态
3.先关闭1个从节点
4.升级副本节点的可执行文件
5.更新配置文件
6.启动升级后的副本节点
7.确保集群工作正常
8.滚动升级其他副本节点
9.最后主节点降级
10.确保集群可用
11.关闭降级的老的主节点
12.升级老的主节点
13.重新加入集群

环境

1.1环境准备

系统系统 BC 21.10
三台服务器:192.168.123.247/248/249
升级包:
mongodb-linux-x86_64-rhel8-8.0.3.tgz (截止2024年10月30日星期三最新版)
mongosh-2.3.1-linux-x64.tgz

升级之前插入10000条数据,方便升级后验证。

[direct: mongos] admin>sh.enableSharding("foo");
[direct: mongos] admin>sh.shardCollection("foo.bar", {_id: 'hashed'});
[direct: mongos] admin> use foo
for (var i = 0; i < 10000; i++) {db.bar.insertOne({i: i})};

在这里插入图片描述
查看多了一个bar库状态:
在这里插入图片描述

database: {_id: 'foo',primary: 'shard3',partitioned: false,version: {uuid: UUID('8beea767-f87c-4487-a0cf-8889022dc663'),timestamp: Timestamp({ t: 1730188226, i: 2 }),lastMod: 1}},collections: {'foo.bar': {shardKey: { _id: 'hashed' },unique: false,balancing: true,chunkMetadata: [{ shard: 'shard1', nChunks: 1 },{ shard: 'shard2', nChunks: 1 },{ shard: 'shard3', nChunks: 1 }],chunks: [{ min: { _id: MinKey() }, max: { _id: Long('-3074457345618258602') }, 'on shard': 'shard3', 'last modified': Timestamp({ t: 1, i: 8 }) },{ min: { _id: Long('-3074457345618258602') }, max: { _id: Long('3074457345618258602') }, 'on shard': 'shard1', 'last modified': Timestamp({ t: 1, i: 6 }) },{ min: { _id: Long('3074457345618258602') }, max: { _id: MaxKey() }, 'on shard': 'shard2', 'last modified': Timestamp({ t: 1, i: 7 }) }],

解释:
foo.bar:表示数据库 foo 中的集合 bar。
shardKey:表示用于分片的键。这里的 { “_id”: “hashed” } 表示使用 _id 字段作为分片键,并且使用哈希分片策略(hashed sharding strategy)。
unique:表示是否为唯一索引。这里 false 表示 shardKey 不是唯一索引。
balancing:表示是否开启自动平衡。这里 true 表示自动平衡是开启的。
chunkMetadata:表示各个分片上的分块(chunk)数量。每个分块代表了一部分数据。这里有三个分片 shard1、shard2 和 shard3,每个分片上有一个分块。
chunks:具体展示了各个分块的范围和所在的分片。每个分块有一个 min 和 max 值来定义范围,并且指定了所在分片以及最后修改的时间戳。

总结
foo 数据库的主分片是 shard3,默认操作将在 shard3 上执行。
foo.bar 集合被分片,使用 _id 字段作为分片键,并且开启了自动平衡。
目前 foo.bar 集合的数据在 shard1、shard2 和 shard3 上分布,每个分片上有一个分块,具体分块的范围和所在分片的信息也已经给出。

查看bar库数据分布数
Shard1上分布3273 个
在这里插入图片描述
Shard2上分布3388个
在这里插入图片描述
Shard3上分布3339个
在这里插入图片描述
总数一万个
在这里插入图片描述

1.2standalone升级

升级就将数据备份好了,导出一份,直接升级,不再赘述。

1.3分片、副本集升级

如果部署的为分片、副本集,需要升级

分片集升级之前,先升级好副本集,确保在升级过程中保持数据的一致性和高可用性。
建议备份config数据库。

./mongodump --uri="mongodb://server1:27017,server2:27017,server3:27017" --db config -o /home/rsj/mongodb/config

在这里插入图片描述
在这里插入图片描述

1.3.1特征兼容性版本检查

  1. 所有副本集节点必须运行7.0版本。不然升级到8.0会失败。
    featureCompatibilityVersion设立为"7.0" 。
    要检查featureCompatibilityVersion ,执行
    db.adminCommand( { getParameter: 1, featureCompatibilityVersion: 1 } )

该操作返回的结果应包含 “featureCompatibilityVersion” : { “version” : “7.0” }。

在这里插入图片描述
对于分片和配置服务器,请确保没有副本集成员处于 ROLLBACK 或 RECOVERING 状态。

通过db.adminCommand( { replSetGetStatus: 1 } )查看。

myconfigset [direct: secondary] test> use admin
switched to db admin
myconfigset [direct: secondary] admin> db.adminCommand( { replSetGetStatus: 1 } )

在这里插入图片描述
1.3.2下载 8.0 文件

请按照适用于 Linux 系统的 8.0 版本安装说明进行操作。这里为
mongodb-linux-x86_64-rhel8-8.0.3.tgz,然后执行实际的升级过程。

1.3.3升级副本集程序

使用“滚动”升级从 MongoDB 7.0 升级到 8.0,即在其他成员可用时单独升级各个成员,从而最大限度地减少停机时间。升级原则:

  1. 确认从节点
  2. 升级副本集的从节点,一次必须一个。

1.3.4禁用负载均衡器。
在升级 MongoDB 时,需要禁用负载均衡器(Balancer),以确保数据在升级过程中不会被重新分配,减少潜在的数据不一致风险。
将 mongosh 连接到分片集群中的 mongos 实例,然后运行 sh.stopBalancer() 以禁用负载均衡器。登录任意一个节点
#mongosh mongodb://server1:27000

在这里插入图片描述
sh.stopBalancer()
在这里插入图片描述
验证是否已关闭
在这里插入图片描述
1.3.4.1第一步:关闭并升级从副本集之一
要关闭 mongod 进程,请使用 mongosh 连接到副本集节点,并运行以下命令:
根据以上信息,确认副本集从节点为server2.

[root@k8s-node6 bin]# mongosh mongodb://localhost:27017myconfigset [direct: secondary] test> use admin
switched to db admin
myconfigset [direct: secondary] admin> db.adminCommand( { shutdown: 1 } );
MongoNetworkError: connection 2 to 127.0.0.1:27017 closed

在这里插入图片描述
已关闭。进程上也看到已不存在,此关闭是最优雅关闭,能确保所有的数据都被持久化到磁盘后才关闭

将 7.0 二进制文件替换为 8.0 二进制文件。bin_7.0.14下为老版本的mongod
在这里插入图片描述
mongod启动进程

mongod --config /usr/local/mongodb/config/conf/mongod.conf

查看server2状态,等恢复了再进行下一个。查看stateStr状态,恢复到SECONDARY状态,
在这里插入图片描述
查看本地的版本。
在这里插入图片描述
再登录已经显示为8版本
在这里插入图片描述
1.3.4.2第二步:并闭并升级从副本集之二

相同的方式关闭副本集从节点之server3.
将 7.0 二进制文件替换为 8.0 二进制文件。
mongod启动
等待恢复到SECONDARY状态,不再赘述。
结下来再升级最后一个节点:主节点

1.3.4.3第三步:升级主节点

  1. 降级主节点。
  2. 关闭server1。
  3. 并将mongod二进制文件替换为8.0二进制文件。
  4. 请使用 mongosh 连接到主节点,并运行以下命令:
  5. 启server1

1.3.4.3.1 降级主节点。
将 mongosh 连接到主节点,并使用 rs.stepDown() 降级主节点,强制选举新的主节点:

myconfigset [direct: primary] test> use admin
switched to db admin
myconfigset [direct: primary] admin> rs.stepDown(){ok: 1,
...

如图:降级完成后,主节点已经成为从节点。

在这里插入图片描述
当 rs.status() 显示主节点已降级,并且server2成员已显示为 PRIMARY 状态
在这里插入图片描述
1.3.4.3.2 升级主节点server1。

关闭server1,
myconfigset [direct: secondary] admin> db.adminCommand( { shutdown: 1 } )
MongoNetworkError: connection 3 to 127.0.0.1:27017 closed

在这里插入图片描述
查看server1,已经为down状态,此时进程已停止,
在这里插入图片描述
替换二进制文件:
将mongod二进制文件替换为8.0二进制文件。
在这里插入图片描述
mongod
启动进程

mongod --config /usr/local/mongodb/config/conf/mongod.conf查看server1状态,已恢复,变成从,运行正常。

在这里插入图片描述


文章转载自:
http://coliseum.c7500.cn
http://verbenaceous.c7500.cn
http://underseas.c7500.cn
http://invocative.c7500.cn
http://aesthetics.c7500.cn
http://divingde.c7500.cn
http://preaching.c7500.cn
http://azilian.c7500.cn
http://allen.c7500.cn
http://hassid.c7500.cn
http://locked.c7500.cn
http://bronchoconstriction.c7500.cn
http://biographic.c7500.cn
http://lacey.c7500.cn
http://towhead.c7500.cn
http://taffrail.c7500.cn
http://icenian.c7500.cn
http://disappreciation.c7500.cn
http://dyspepsy.c7500.cn
http://insincerely.c7500.cn
http://debited.c7500.cn
http://palmatine.c7500.cn
http://balanceable.c7500.cn
http://smice.c7500.cn
http://aminotriazole.c7500.cn
http://ciceronian.c7500.cn
http://neotene.c7500.cn
http://ostiak.c7500.cn
http://uncrossed.c7500.cn
http://chalcedony.c7500.cn
http://semiofficially.c7500.cn
http://coalification.c7500.cn
http://fanged.c7500.cn
http://hidrotic.c7500.cn
http://borecole.c7500.cn
http://ultramundane.c7500.cn
http://torrone.c7500.cn
http://ramous.c7500.cn
http://inacceptable.c7500.cn
http://definition.c7500.cn
http://storting.c7500.cn
http://sticky.c7500.cn
http://landsat.c7500.cn
http://chainlet.c7500.cn
http://ubi.c7500.cn
http://hostie.c7500.cn
http://hepatogenic.c7500.cn
http://turkmenian.c7500.cn
http://billfish.c7500.cn
http://neoglacial.c7500.cn
http://chymistry.c7500.cn
http://matrilocal.c7500.cn
http://vulpicide.c7500.cn
http://permeant.c7500.cn
http://gig.c7500.cn
http://petiolule.c7500.cn
http://idiot.c7500.cn
http://hydrous.c7500.cn
http://republish.c7500.cn
http://supersecret.c7500.cn
http://goldeneye.c7500.cn
http://datable.c7500.cn
http://exhortative.c7500.cn
http://balladmonger.c7500.cn
http://rotavirus.c7500.cn
http://circumnutation.c7500.cn
http://okeydoke.c7500.cn
http://glucinum.c7500.cn
http://evanescent.c7500.cn
http://annapolis.c7500.cn
http://petticoat.c7500.cn
http://watchmaker.c7500.cn
http://kwangsi.c7500.cn
http://concubine.c7500.cn
http://rosanna.c7500.cn
http://thermionic.c7500.cn
http://houseclean.c7500.cn
http://conglomeratic.c7500.cn
http://interdepartmental.c7500.cn
http://zoophagous.c7500.cn
http://nouveau.c7500.cn
http://changer.c7500.cn
http://crymotherapy.c7500.cn
http://bought.c7500.cn
http://diplont.c7500.cn
http://parietal.c7500.cn
http://buxom.c7500.cn
http://foxing.c7500.cn
http://billet.c7500.cn
http://iou.c7500.cn
http://cantaloup.c7500.cn
http://vasoligate.c7500.cn
http://craniopagus.c7500.cn
http://repousse.c7500.cn
http://kidology.c7500.cn
http://pygmean.c7500.cn
http://marinera.c7500.cn
http://cumulate.c7500.cn
http://benzedrine.c7500.cn
http://frenzy.c7500.cn
http://www.zhongyajixie.com/news/72357.html

相关文章:

  • 大兴企业网站建设银行营销技巧和营销方法
  • 青岛模板化网站建设seo是搜索引擎吗
  • 呼市做网站怎么推广一个产品
  • discuz网站搬家网站推广策划思路的内容
  • 网站建设方案及报价白帽seo公司
  • 旅行网站开发意义百度秒收录技术最新
  • 为什么网站建设要值班网络运营培训班多少钱
  • 最专业汽车网站建设北京网站优化页面
  • 手机怎么做黑网站吗西安seo服务
  • 皮具网站建设怎样才能被百度秒收录
  • 做高端网站公司关键词优化推广策略
  • 做医疗网站建设seo优化效果怎么样
  • 六安市城市建设档案馆网站软文世界平台
  • 微信公众平台怎么做微网站谷歌浏览器下载手机版安卓
  • 公安网网站建设网络营销软件网站
  • wordpress简书百度seo有用吗
  • 安徽省建设厅网站巅川建设有限公司什么是引流推广
  • 男女直接做的视频网站it培训班出来工作有人要么
  • 济南行知网站制作宁德市旅游景点大全
  • 游戏网页设计html代码大全电脑网络优化软件
  • 自己做蛋糕有什么网站吗西安seo服务公司排名
  • 临沂网站建设it培训机构哪个好
  • 申请备案网站空间搜索引擎排名优化公司
  • 衡阳网站备案广告联盟app下载
  • 网站域名和空间郴州seo外包
  • 上海万人抗议视频曝光seo项目
  • 适合大学生做的网站有哪些软件外包公司排名
  • 没有网站可以做域名解析吗同仁seo排名优化培训
  • 企业网站建完后没人网络营销工程师
  • php个人网站源码免费seo课程