温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

yum 安装mongodb 配置复制集 (主从复制)

发布时间:2020-06-26 13:17:04 来源:网络 阅读:358 作者:wx5a98a78793203 栏目:系统运维

一.配置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 表

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI