
第一步:通过任务栏的“开始->设置->控制面板”,选择里头的“ 添加/删除程序”。
第二步:在左边选择“添加/删除WINDOWS组件”。
第三步:稍后会出现添加删除WINDOWS组件窗口,我们从中选择“终端服务”,然后点“下一步”进行安装。这里要注意一点的是在安装过程中需要我们插入WINDOWS 2000SERVER系统光盘到光驱中。
第四步:安装完毕后需要重新启动计算机,重启后就完成了在WINDOWS 2000SERVER下的远程桌面连接功能的安装工作。相比memcached:
1、redis具有持久化机制,可以定期将内存中的数据持久化到硬盘上。
2、redis具备binlog功能,可以将所有 *** 作写入日志,当redis出现故障,可依照binlog进行数据恢复。
3、redis支持virtual memory,可以限定内存使用大小,当数据超过阈值,则通过类似lru的算法把内存中的最不常用数据保存到硬盘的页面文件中。
4、redis原生支持的数据类型更多,使用的想象空间更大。
5、前面有位朋友所提及的一致性哈希,用在redis的sharding中,一般是在负载非常高需要水平扩展时使用。我们还没有用到这方面的功能,一般的项目,单机足够支撑并发了。redis 30将推出cluster,功能更加强大。
6、redis更多优点,请移步官方网站查询。Replica Set(复制集)滚动升级步骤如下:
检查次节点是否没有访问,如有访问,需要先切换到主节点上
mongostat 查看qps等
关闭次节点数据库,替换mongod版本,重新启动
dbshutdownServer()
替换版本;
启动mongod进程
主节点进行降级,选举出新的主节点
rsstepdown()
关闭原主节点,替换mongod版本,重新启动。
数据节点全部更新完毕后,替换arbiter节点mongod版本。
如方便进行 *** 作,将主、次节点切换为原状态,并进行监控。
sharding(分片)升级
sharding 滚动升级 *** 作较为繁琐,停止相应进程时一定要考虑清楚对整个MongoDB集群的影响,如果需要同时关闭一台服务器所有进程,一定要确保主节点正常服务或投票能产生新的主节点。参考步骤如下:
禁用balancer
shstopBalancer()
首先升级mongos(mongos,mongod之外的工具如mongo mongostat等可先替换)
停止一台mongos,用新版本mongs覆盖原来的版本后,启动mongs;再同样升级其他mongos版本。
升级config server,至少保留一个 config server始终正常状态,依次升级。
停止一台config server,通常同一台服务器上还有mongod数据节点,需要停止该服务器所有
mongod节点,确认停止后能不影响主节点的投票产生(优先升级对应secondary节点)。替换
config server 对应的mongod文件。同样升级其他config server节点。
升级每个分片的复制集, *** 作同升级Replica Set,若复制集mongod和config server在同一台,则和config server一起升级。
启用balancer
shstartBalancer()mongo副本集/复制集是mongo高可用性特征之一,是有自动故障恢复功能的主要集群。由一个Primary节点和一个或多个Secondary节点组成。
复制是在多台服务器之间同步数据的过程,由一组Mongod实例(进程)组成,包含一个Primary节点和多个Secondary节点
Mongodb Driver(客户端)的所有数据都写入Primary,Secondary从Primary同步写入的数据
通过上述方式来保持复制集内所有成员存储相同的数据集,提供数据的高可用
Failover (故障转移,故障切换,故障恢复)
Redundancy(数据冗余)
避免单点,用于灾难时恢复,报表处理,提升数据可用性
读写分离,分担读压力
对用户透明的系统维护升级
主节点记录所有的变更到oplog日志
辅助节点(Secondary)复制主节点的oplog日志并且将这些日志在辅助节点进行重放(做)
各个节点之间会定期发送心跳信息,一旦主节点宕机,则触发选举一个新的主节点,剩余的辅助节点指向新的主
10s内各辅助节点无法感知主节点的存在,则开始触发选举
通常1分钟内完成主辅助节点切换,10-30s内感知主节点故障,10-30s内完成选举及切换
用户恢复数据,防止数据丢失,实现灾难恢复
人为误 *** 作导致数据删除,程序Bug导致数据损坏等
首要复制节点,由选举产生,提供读写服务的节点,产生oplog日志
备用(辅助)复制节点,Secondary可以提供读服务,增加Secondary节点可以提供复制集的读服务能力
在故障时,备用节点可以根据设定的优先级别提升为首要节点。提升了复制集的可用性
Arbiter节点只参与投票,不能被选为Primary,并且不从Primary同步数据
Arbiter本身不存储数据,是非常轻量级的服务。
当复制集成员为偶数时,最好加入一个Arbiter节点,以提升复制集可用性
Mongodb版本30以上, 三台服务器均为64位
三台服务器 -------- Primary(Centos7)、 Secondary(Centos7)、 Secondary(Debian8);架设IP分别为 19216811、12、 13
三台服务器关闭防火墙 -------- systemctl stop firewalldservice
三台服务器修改mongo配置文件 -------- vi /etc/mongodconf
侦听地址除了 localhost 外再加上服务器IP; 设置复制集名字(RepliSetName)。
开启mongod服务: mongod
三台服务器mongo各自初始化: rsinitiate()
Primary上副本集配置:
rsconf(配置名称,可随意取)={_id:"副本集名",member:[{_id:0,host:"IP:port",priority:2},{_id:1,host:"IP:port",priority:1},{_id:2,host:"IP:port",priority:1}]}
在初始化:rsinitiate(变量名,如下面的config)
Secondary上配置:
rsslaveOk() #承认自己是Secondary
三台服务器上互相添加副本集成员:
rsadd("IP:port"), 如在Primary上 rsadd("19216812:27017"), rsadd("19216813:27017")
查看状态
rsstatus()
3、rs(replication set) 常用命令:
初始化副本集 ---- rsinitiate()
mongo查看状态 ---- rsstatus()
初始化副本集配置
rsconf = {_id: "rs0",
members: [{
_id: 0,
host: ":27017"}]}
rsinitiate( rsconf )
验证副本集配置 ---- rsconfig()
增加副本集成员 ---- rsadd("Ip:port")
移除副本集成员 ---- rsremove("IP:port") #此步骤在Primary上 *** 作
改变成员变量的优先级
cfg = rsconf()
cfgmembers[0]priority = 3
cfgmembers[1]priority = 1
cfgmembers[2]priority = 2
rsreconfig(cfg)
配置延迟副本集
cfg = rsconf()
cfgmembers[0]priority = 0
cfgmembers[0]hidden = true
cfgmembers[0]slaveDelay = 3600
rsreconfig(cfg)
# 07/03/2017
区别:
1 mongod 和 mongo 的区别
前者是启用MongoDB进程,后者是对MongoDB进行连接 *** 作
2 执行 mongod 需要 配置路径 进行启用,单纯的双击 mongodexe文件会闪出,正确的是执行mongod --dbpath 命令
3 在执行mongod命令启用MongoDB进程(服务器)的基础上,再使用mongo 对其进行连接 *** 作,
概念:
1什么是”mongod“
mongod是处理MongoDB系统的主要进程。它处理数据请求,管理数据存储,和执行后台管理 *** 作。当我们运行mongod命令意味着正在启动MongoDB进程,并且在后台运行。
2"mongod"参数有什么
传递数据库存储路径,默认是"/data/db"
端口号 默认是 "27017"
3什么是"mongo"
它是一个命令行工具用于连接一个特定的mongod实例。当我们没有带参数运行mongo命令它将使用默认的端口号和localhost连接
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)