yum 安装mongodb 配置复制集 (主从复制)
admin
2023-03-02 00:01:44
0

一.配置yum 仓库

vim /etc/yum.repos.d/mongodb-org-4.2.repo #新建仓库文件

[mongodb-org-4.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.2.asc

yum 安装mongodb 配置复制集 (主从复制)
几个包的作用
1.mongodb-org-server: 主程序包含MongoDB守护进程和相关的配置和初始化脚本。
2.mongodb-org-mongos: 包含mongos的守护进程。(切片分库使用的)
3.mongodb-org-shell: 包含mongo shell。
4.mongodb-org-tools: 包含MongoDB的工具: mongoimport, bsondump, mongodump, mongoexport, mongofiles, mongooplog, mongoperf, mongorestore, mongostat, and mongotop。

二.安装

 yum install mongodb-org -y

三.配置复制集
先安装好两个节点,在配置每个节点的配置,配置除了监听IP不一样其均一样配置
vim /etc/mongo.conf

systemLog:
  destination: file
  logAppend: true
  path: /var/log/mongodb/mongod.log

storage:
  dbPath: /var/lib/mongo
  journal:
    enabled: true

processManagement:
  fork: true  # fork and run in background
  pidFilePath: /var/run/mongodb/mongod.pid  # location of pidfile
  timeZoneInfo: /usr/share/zoneinfo

net:
  port: 27017
  bindIp: 192.168.0.11

replication:  #开启复制集功能
    replSetName: test-rc #名称注意不能顶格写否则报错

mongo -host 192.168.0.9 #进入节点

rs.status() #查看复制集状态
yum 安装mongodb 配置复制集 (主从复制)
两个节点都和上图一样说明复制集正常启动了
cfg={"_id":"test-rc","members":[{"_id":0,"host":"192.168.0.9:27017"},{"_id":1,"host":"192.168.0.11:27017"}]}
#定义初始化参数,将两个host主机加入到test-rc复制集当中
rs.initiate(cfg) #启动复制集功能(初始化配置时要保证从节点没有数据)
rs.status() 查看复制集状态
yum 安装mongodb 配置复制集 (主从复制)

三,增加新节点,删除节点

现在192.168.0.13 新节点上安装好mongodb 配置里加入复制集并启动起来
登录主节点
rs.add("192.168.0.13:27017") #加入新的节点
yum 安装mongodb 配置复制集 (主从复制)
re.status()
yum 安装mongodb 配置复制集 (主从复制)
查看复制集状态,可以看到192.168.0.13节点已然在线了
rs.remove("192.168.0.13:27017") #删除节点
yum 安装mongodb 配置复制集 (主从复制)
再用rs.status()查看下,可以发现已经没有192.168.0.13节点的信息了

四,手动切换节点

rs.freeze(30) #暂停30s 不参与选举
rs.stepDown(60,30) #交出主节点位置,维持从节点状态不少于60秒,等待30秒使主节点和从节点日志同步(用于切换)

五,设置从节点可读

db.getMongo().setSlaveOk() #设置从节点可读
yum 安装mongodb 配置复制集 (主从复制)
主节点
yum 安装mongodb 配置复制集 (主从复制)
从节点

六,备份恢复

mongodump --port 20000 --host 192.168.0.9 -d testdb -o /root/test
#只备份testdb 数据库,备份到/root/test/ 路径 注意 上面有两个--
mongorestore -d k1 /root/test/testdb/
#把/root/test/testdb/ 里的备份的数据,恢复成k1数据库
mongodump --port 20000 --host 192.168.0.9 -o /root/all
#备份所有数据
mongoexport --port 20000 --host 192.168.0.9 -d testdb -c table1 -o /root/table1.json
#只备份testdb库里的 table1 表
mongoimport --host 192.168.0.14 -d k1 -c table2 --file=/root/table1.json
#把/root/table1.json 的数据恢复到k1库 table2 表

相关内容

热门资讯

“抢人大战”,风向有变? 各地一场“抢老人”的大战,已然徐徐拉开大幕。最近,有着人口净流出压力的吉林,计划拿出3亿元发展旅居康...
石家庄一家不限量的爱心素食面馆... 7月24日正午时分,记者来到位于石家庄市新华区东明家居西二环店北门旁的“素面”小店,不大的店面里坐满...
中材科技申请风电叶片外补强辅助... 国家知识产权局信息显示,中材科技(伊吾)风电叶片有限公司申请一项名为“风电叶片外补强辅助固化装置”的...
为人工智能治理提供重要公共产品 图为2026世界人工智能大会暨人工智能全球治理高级别会议举办期间,在世博展览馆灵心巧手展位,参观者观...
泽连斯基称俄对乌多地发动大规模... 当地时间25日,乌克兰总统泽连斯基通报称,俄军于当日凌晨对乌克兰多地发动大规模空袭,使用2枚导弹、近...
不怕没水!武汉科学家找到水稻身... 干旱来了,水稻启动"抗旱模式",可一启动就长不大、结得少——这是困扰育种界几十年的老难题。7月23日...
多款手机涨价超1000元,大存... 今年暑期消费旺季,国内智能手机市场迎来一轮显著的价格上调。第一财经记者走访深圳多家品牌门店发现,以v...
SpaceX上市后星舰首飞:首... 界面新闻实习记者 | 李响 在经历多次波折后,SpaceX公司的星舰(Starship)终于完成了...
博世洗衣机强制解锁 博世洗衣机强制解锁的方法可能因型号和具体情况而异。以下是一些常见的方法:1. 按住电源键:有些博世洗...
美的电热水器不能出水了该怎么处... 美的电热水器不能出水了该怎么处理?1、管路堵塞,管路因水垢、杂物或冻堵等原因堵塞,热水自然就不能出水...