mongodb3.4.4安装副本集,分片和遇到的一些问题(一
发表于:2025-11-11 作者:千家信息网编辑
千家信息网最后更新 2025年11月11日,废话不多说三台机器host1,host2,host3查看官方安装文档https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-ha
千家信息网最后更新 2025年11月11日mongodb3.4.4安装副本集,分片和遇到的一些问题(一
废话不多说
三台机器
host1,host2,host3
查看官方安装文档https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat/
编辑源文件
vim /etc/yum.repos.d/mongodb-org-3.4.repo
[mongodb-org-3.4]name=MongoDB Repositorybaseurl=gpgcheck=1enabled=1gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc
安装
yum install -y mongodb-org
由于我是在3台虚拟机上做的,宿主机其实是一个,所以配置了3个端口,
注意:mongod的配置文件遵循yaml文件格式!
[root@vultr ~]# cat /etc/mongod.conf # mongod.conf# for documentation of all options, see:# http://docs.mongodb.org/manual/reference/configuration-options/# where to write logging data.systemLog: destination: file logAppend: true path: /var/log/mongodb/mongod.log# Where and how to store data.storage: dbPath: /var/lib/mongo journal: enabled: true# engine:# mmapv1:# wiredTiger:# how the process runsprocessManagement: fork: true # fork and run in background pidFilePath: /var/run/mongodb/mongod.pid # location of pidfile# network interfacesnet: port: 27017# bindIp: 127.0.0.1 # Listen to local interface only, comment to listen on all interfaces.#security:#keyFile = /opt/key/autokey#operationProfiling:#replication:replication: oplogSizeMB: 1000 replSetName: rstest#sharding:## Enterprise-Only Options#auditLog:#snmp:
基本上是默认配置,dbdata位置和log目录看具体情况,酌情修改,bindip 默认是打开的,注销了,不然mongo只会本地访问
启动
mongod -f /etc/mongod.conf
这时可以随便进入一台mongod 进行副本集的初始化
mongo 进入,默认是27017端口,但是如果改变端口,就要用mongo ip:port的方式了
首先加载配置
config={_id:"rstest",members:[{_id:0,host:"host1:port"},{_id:1,host:"host2:port"},{_id:2,host:"host3:port"}]}##_id 必须是配置文件中副本集的名字副本集初始化
rs.initiate(config)
这里有一点要注意,要保证每台mongodb的之间的连通性,和每个mongo都是空数据,不然在建立副本集的时候会报错,如果数据库不是空的,必须要先剔除副本集,然后删除db.dropDatabase()
最后配置生效
rs.reconfig(config)
日常的横向扩展和伸缩,以及手动配置主节点
PRIMARY> rs.add("127.0.0.1:27018"); //添加节点PRIMARY> rs.remove("127.0.0.1:27018"); //删除节这两个命令是不需要做rs.reconfig(config)配置生效的rs.conf()// 查看配置config=rs.conf() //读取配置config.members[1].priority = N // N = 1到100 越大越优先变主节点rs.reconfig(config) //让配置生效,一会就host2 就会变成主节点选举的算法:
mongodb 集群的选择局算法其实和zookeeper差不多,区别在于用的是bully算法,mongod 会先对比谁是最后一次进行数据操作的,也就是说,谁的数据最新,如果数据一样,那么就会对比谁可以用最短的时间成为主节点,选举过程和zookeeper一样,只是对比k-v不太一样。
另外,在集群的选举过程中,不想让某个从节点变成主节点,可以用
rs.freeze(120) //小括号里的数据是冻结时间,也就是说在120秒内该节点不可以变成主节点,单位秒
配置
节点
数据
副本
文件
端口
算法
选举
也就是
也就是说
时间
过程
集群
差不多
两个
之间
位置
单位
只是
名字
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全与技术专业课
万方数据库的doi号
勤哲服务器 学校管理
附加的数据库怎么添加关系图
金融企业软件开发入哪个科目
工资软件数据库下载
电信等网络安全运营部
新西兰最新网络安全法
手游总是连不上服务器
服务器管理面板开vps
方舟手游官服双人服务器名字
深圳胜莱网络技术有限公司
wind数据库使用权
数据库用什么措施保证实体完整性
班会网络安全情景剧
嘉定区市场软件开发代理商
大一数据库技术及应用作业
数据库服务器硬件
自主作战网络技术
杭州 软件开发培训机构
爱推互联网科技有限公司
上海的dns服务器
软件开发专业容不容易秃头
软件开发招投标竞标策略
互联网与科技传播
沈阳沐洋软件开发有限公司
石家庄网络技术培训
网络安全调查的目的
网站没有谷歌收录数据库
软件开发前景 知乎