基于副本集的mongodb分片教程39.doc

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于副本集的mongodb分片教程39

Mongodb副本集 主从复制和集群的区别 1: 集群没有特定的主数据库, 主从复制需要手动指定主数据库。 2: 故障冗余:集群具备自动故障恢复功能,如果哪个主数据库宕机了,集群中就会推选出一个从属数据库作为主数据库。主从复制需手动配置。 实验环境 1.2台centos6.5虚拟机。 Centos03_IP:5:27017 Centos04_IP:6:27017 2.本端PC mongod作为仲裁服务器。 windows_IP:45:27017 实施步骤: 建立集群 指定数据服务器。 首先取个集群名字,这里就取我们的公司名linktrust,另外指定centos03为副本集中的一台数据服务器。 命令: cd /usr/local/mongod/bin ./mongod --dbpath=/usr/local/mongodb/db --port 27017 --replSet linktrust/6:27017 注释:命令意思是启动centos03里面的mongodb程序,指定本端端口为27017。指定centos04:6是linktrust集群下的另一个数据库服务器,端口为27017(端口可自定义)。 指定副本集另一台数据库服务器 命令: cd /usr/local/mongod/bin ./mongod --dbpath=/usr/local/mongodb/db --port 27017 --replSet linktrust/5:27017 命令注释:启动centos04里面的mongodb程序,指定本端端口为27017。互指centos03:5是linktrust集群下的另一个数据库服务器,端口为27017(端口可自定义)。 副本集初始化 互指数据库服务器之后会发现日志提示,信息提示我们要初始化 “副本集“。执行初始化命令时可以连接配置集群的任意一台服务器,但必须进入admin集合。 初始化命令: cd /usr/local/mongod/bin ./mongo 5/admin db.runCommand({“replSetInitiate”:{“_id”:”linktrust”,”members”:[{“_id”:1,”host”:5”},{“_id”:2,”host”:”6”}]}}) ? 查看集群中的服务器状态 副本集开启成功后,通过日志信息我们可以看到5端口为27017的已经成为主数据库服务器。 6:27017成为备用服务器 另外我们也可以使用rs.status()来查看下集群中的服务器状态,图中我们可以清楚的看到谁是主,还是从 配E:\mongodb\binmongod --dbpath=E:\mongodb\db --port 27017 --replSet linktrust/5:27017 在admin集合中使用rs.addArb()添加仲裁服务器。 添加好了之后,我们再次使用rs.status()来查看下集群中的服务器状态: 测试集群故障自动恢复功能 测试故障恢复那么我们需要将目前主用数据库服务器停掉,观察从数据库服务器是否会自动切换顶替主服务器。通过之前状态查看我们知道5:27017是主服务器,.66为从服务器,那么我们可以通过按Ctrl+C来KO掉该服务器mongodb进程,观察变化。 通过日志信息,我们可以发现从数据服务器(6)会立即选举成为主服务器,我们也可以通过进入admin集,使用rs.status()直观服务器状态信息,图中原从服务器状态已经转为primary,说明集群具备自动故障恢复功能。 基于副本集的mongodb分片教程 在mongodb里面存在另一种集群,就是分片技术,跟sql server的表分区类似,我们知道当数据量达到T级别的时候,我们的磁盘,内存,就吃不消了,针对这样的场景我们该如何应对。 分片 mongodb采用将集合进行拆分,然后将拆分的数据均摊到几个片上的一种解决方案。 人脸: 代表客户端,客户端肯定说,你数据库分片不分片跟我没关系,我叫你干啥就干啥,没什么好商量的。 mongos: 首先我们要了解”片键“的概念,也就是说拆分集合的依据是什么?按照什么键值进行拆分集合.... 好了,mongos就是一个路由服务器,它会根据管理员设置的“片键”将数据分摊到自己管理的mongod集群,数据和片的对应关系以及相应的配置信息保存在config服务器上。 mongod: 一个普通的数据库实例,如果不分片的话,我们会直接连上mongod。 实战 首先我们准备4个mongodb程序,我这里是装在4台centos6.5虚拟机上, 直接解压就可以使用。当然你也可以做多个文件夹的形式。 副本集fanglu: Centos01 3:2222 Centos02 4:3333 副本集li

文档评论(0)

bzhuangrduh7 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档