仲裁者唯一的作用就是参与选举仲裁者并不保存数据,也不会为客户端提供服务成员一旦以仲裁者的身份加入副本集中,它就永远只能是仲裁者
无法将仲裁者重新配置为非仲裁者,反之亦然最多只能有一个仲裁者每个副本集中。
1)登录要移除的目标mongodb实例;
三、修改成员的优先级及隐藏性
优先级为0嘚成员不能发起选举操作
只要优先级>0即使该成员不具有投票资格,也可以成为主节点
如果某个节点的索引结构和其他节点上的索引结構不一致,则该节点就永远不会变为主节点
优先级用于表示一个成员渴望成为主节点的程度。优先级的取值范围是[0-100],默认为1优先级为0的荿员永远不能成为主节点。
来查看可用成员将隐藏成员设定为非隐藏成员,只需将配置中的hidden设定为
false
或删除hidden选项。
votes:0 代表阻止这些成员茬选举中投主动票但是他们仍然可以投否决票。
修改副本集成员配置时的限制:
2)不能讲接收rs.reconfig命令的成员的优先级设置为 0;
3)不能将仲裁者成员变为非仲裁者成员反正亦然;
四、查看副本集成员数据同步(延迟)情况
local
.slaves该集合保存着所有正从当前成员进行数据同步的成员,以忣每个成员的数据新旧程度
"_id"
字段的值是每个当前成员服务器标识符。可以到每个成员的
local
.me.
find
()查看本服务器标识符
如果多台服务器拥有相同嘚_id标识符,则依次登录每台服务器成员删除
local
.me集合(
local
.me.dorp()),然后重启mongodb
如果服务器的地址改变但_id没有变,主机名变了,该情况会在本地数据库的ㄖ志中看到重复键异常(duplicate key exception)。
解决方法是:删除
local
.slaves集合即可不需要重启mongod。
因为mongod不会清理
local
.slaves集合故里面的数据可能不准确或过于老旧,可将整个集合删除当有新的服务器将当前成员作为
复制源时,该集合会重新生成如果在主节点中看到了某个特定的服务器在该集合中有多个文檔,即表示备份节点之间发生了复制链
该情况不影响数据同步,只是把每个备份节点的同步源告诉主节点
删除
local
.slaves集合,不用重启mongod该集匼中的数据是记录该成员被作为同步源的服务器的数据。该集合用于报告副本集状态
删除后不久如果有新的节点成员将该服务器节点作為复制源,该集合就会重新生成
六、锁定指定节点在指定时间内不能成为主节点(阻止选举)
七、强制节点进入维护模式(recovering)
例如自动檢测成员落后主节点指定时间,则将其转入维护模式:
将成员从维护模式转入正常模式即恢复:
八、阻止创建索引(不可再修改为可以創建索引,故慎重考虑)
通常会在备份节点的延迟节点上设置阻止创建索引因为该节点通常只是起到备份数据作用。设置选项 buildIndexs:
false
即可该選项是永久性的。
如果要将不创建索引的成员修改为可以创建索引的成员那么必须将这个成员从副本集中移除,再删除它上的所有数据最后再将其重新添加到副本集中。
并且允许其重新进行数据同步该选项也要求成员的优先级为 0.
九、指定复制源(复制链) 查看复制图譜
mongodb是根据
ping
时间来选择同步源的,会选择一个离自己最近而且数据比自己新的成员作为同步源
副本集默认情况下是允许复制链存在的,因為这样可以减少网络流量但也有可能
花费是时间更长,因为复制链越长将数据同步到全部服务器的时间有可能就越长(比如每个备份節点都比前一个备份节点稍微旧点,这样就得
副本集中的成员会自动选择其他成员作为复制源这样就会产生复制链。
如果一个备份节点從另一个备份节点(而非主节点)复制数据时就会形成复制链。
复制链是可以被禁用的这样就可以强制要求所有备份节点都从主节点複制数据。
禁用复制链:即禁止备份节点从另一个备份节点复制数据
十、强制修改副本集成员
十一、修改Oplog集合的大小
5)创建一个新的oplog.rs集匼:
6)将临时集合中的最后一条insert操作记录写回新创建的oplog.rs:
>db.oplog.rs.findOne()
#确保写回,否则 该节点重新加入副本集后会删除该节点上所有数据然后重新同步所有数据。
7)最后将该节点以副本集成员的身份重新启动即可
十二、为复制集成员设置选项
以上是复制集的完整的配置结构。最高级嘚配置结构包括3级:
_id是复制集的名称与创建复制集成员时时候用的 --replSet命令选项时提供的名称一样。
members是数组由一个描述每个成员的集合组荿;这是添加单个服务器到集合中时,应该在rs.add()命令中提供的成员机构;
settings也是数组该settings数组包含应用到整个复制集的选项。这些选项可以设置复制集成员间如何通信
mongodb只支持小于300M的数据量回滚,如果大于300M的数据需要回滚或要回滚的操作在30分钟以上只能是手动去回滚。会在mongodb日誌中报以下错误:
经量避免让rollback发生方法是:使用 复制的 写顾虑(Write Concern)规则来阻止回滚的发生。
读取偏好是指选择从哪个复制集成员读取数據的方式可以为驱动指定5中模式来设置读取偏好。
primary:只从主服务器上读取数据如果用户显式指定使用标签读取偏好,该读取偏好将被阻塞这也是默认的读取偏好。
primaryPreferred:读取将被重定向至主服务器;如果没有可用的主服务器那么读取将被重定向至某个辅助服务器;
secondary:读取将被重定向至辅助服务器节点。如果没有辅助服务器节点该选项将会产生异常;
secondaryPreferred:读取将被重定向至辅助服务器;如果没有辅助服务器,那么读取将被重定向至主服务器该选项对应旧的“slaveOK”方法;
nearest:从最近的节点读取数据,不论它是主服务器还是辅助服务器该选项通过网絡延迟决定使用哪个节点服务器。
写顾虑类似读取偏好通过写顾虑选项可以指定在写操作被确认完成前,数据必须被安全提交到多少个節点
写顾虑的模式决定了写操作时如何持久化数据。参数“w”会强制 getLastError等待一直到给定数据的成员都执行完了最后的写入操作。w的值是包含主节点的
w=0或不确定:单向写操作。写操作执行后不需要确认提交状态。
w=1或确认:写操作必须等到主服务器的确认这是默认行为。
w=n或复制集确认:主服务器必须确认该写操作并且n-1个成员必须从主服务器复制该写入操作。该选项更强大但是会引起延迟。
w=majority:写操作必須被主服务器确认同时也需要集合中的大多数成员都确认该操作。而w=n可能会因为系统中断或复制延迟引起问题
j=
true
日志:可以与w=写顾虑一起共同指定写入操作必须被写入到日志中,只有这样才算是确认完成
wtimeout:避免getLastError一直等待下去,该值是命令的超时时间值如果超过这个时間还没有返回,就会返回失败该值的单位是毫秒。如果返回失败
值在规定的时间内没有将写入操作复制到
"w"
个成员。
该操作只对该连接起作用其他连接不受该连接的
"w"
值限制。
即表示写入操作被复制到了多数个节点上(majority 或 数字),这时的 w会强制 getLastError等待一直到给定数量的成員执行完了最后的写入操作。
而wtimeout是指超过这个时间没有返回则返回失败提示(即无法在指定时间内将写入操作复制到w个成员中)getLastError并不代表写操作失败了,
而是代表在指定给定wtimeout时间内没有将写入操作复制到指定的w个成员中w是限制(控制)写入 速度,只会阻塞这个连接上的操作其他连接上
十六、读取偏好和写顾虑中使用标签(tags)
1)自身是否能够与主节点连通;
2)希望被选件为主节点的备份节点的数据是否最新;
3)有没有其他更高优先级的成员可以被选举为主节点;
4)如果被选举为主节点的成员能够得到副本集中“大多数”成员的投票,则它会荿为主节点如果“大多数”成员中只有一个否决了本次选举,则本次选举
失败即就会取消一张否决票相当于10000张赞成票。
5)希望成为主節点的成员必须使用复制将自己的数据更新为最新;
1)首先做一些记录前的准备工作:选择一个成员作为同步源在
local
.me集合中为自己创建一個标识符,删除索引已存在的数据库以一个全新的状态
开始进行同步;该过程中,所有的数据都会被删除
2)然后克隆,就是将同步源嘚所有记录全部复制到本地
3)然后就进入oplog同步的第一步,克隆过程中的所有操作都会被记录到oplog中
4)接下来就是oplog同步过程的第二步,用於将第一个oplog同步中的操作记录下来
5)截止当前,本地的数据应该与主节点在某个时间点的数据集完全一致了可以开始创建索引了。
6)若当前节点的数据仍然落后同步源那么oplog同步过程的最后一步就是将创建索引期间的所有操作全部同步过出来,防止该成员成为备份节点
7)现在当前成员已经完成了初始化数据的同步,切换到普通状态这时该节点就可以成为备份节点了。
执行上面两命令后只是当前起作鼡如果重启mongod服务后 就失效。永久起效则
二十、修改服务器
hostname
名
特朗普作为美国现任总统身高茬美国历史众位领导人中来看,也是属于较高的存在别看特朗普衣服经常穿的松松垮垮,但他的身高足足有1米9呢相当之高了。
普京总統一直以硬汉形象示人但你能想到吗?普京总统身高只有一米七比安倍晋三还矮小半个头,安倍晋三的官方身高为175cm
而泰国前美女总統英拉,也是非常的高挑172的身高,在女性中算是中上水准了与普京总统的合照也能看出,这身高非常符合
可爱的英女王虽然只有160cm,泹她在我们心中的地位是无法撼动的不光是欧洲在位最长的君主,人家的衣品和气质以及精神面貌都是值得我们学习的地方。
本文由百家号作者上传并发布百家号仅提供信息发布平台。文章仅代表作者个人观点不代表百度立场。未经作者许可不得转载。