资讯专栏INFORMATION COLUMN

Windows下MongoDB安装副本集

CollinPeng / 2240人阅读

摘要:安装环境简介命令行操作比较方便创建数据库文件夹配置文件等数据库文件夹文件夹配置文件配置文件更改端口号即可,具体内容如下启动查看状态副本集配置并启动添加其他成员这次指定参数,以为创建一个仲裁接点查看副

安装环境简介
Windows10、MongoDB4.0.3、Robo 3T(mongo命令行操作比较方便)

创建数据库文件夹、配置文件等

  (1)数据库文件夹:db27017、db37017、db47017
  (2)log文件夹:log27017、log37017、log47017
  (3)配置文件:mongod27017、mongod37017、mongod47017
  配置文件更改端口号即可,具体内容如下:
  λ cat mongod27017.conf
   systemLog:
       destination: file
       logAppend: true
       path: E:mongolog27017mongod27017.log
   
   storage:
       dbPath: E:mongodb27017
       journal:
           enabled: true
       engine: wiredTiger
   
   #processManagement:
   #    fork: true
   #    pidFilePath: E:mongomongod27017.pid
   
   net:
       port: 27017
   
   replication:
       replSetName: mongo
       

启动primary

  λ mongod --config "..mongod27017.conf"
  2018-11-08T21:23:38.399+0800 I CONTROL  [main] Automatically disabling TLS 1.0, to force-enable TLS 1.0 specify --sslDisabledProtocols "none"
   #查看状态
   > rs.status()
   {
           "operationTime" : Timestamp(0, 0),
           "ok" : 0,
           "errmsg" : "no replset config has been received",
           "code" : 94,
           "codeName" : "NotYetInitialized",
           "$clusterTime" : {
                   "clusterTime" : Timestamp(0, 0),
                   "signature" : {
                           "hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
                           "keyId" : NumberLong(0)
                   }
           }
   }
  #副本集配置并启动
  > config = {_id:"mongo",members:[{_id:0,host:"127.0.0.1:27017"}]}
       {
               "_id" : "mongo",
               "members" : [
                       {
                               "_id" : 0,
                               "host" : "127.0.0.1:27017"
                       }
               ]
       }
   > rs.initiate(config)
   {
           "ok" : 1,
           "operationTime" : Timestamp(1541685032, 1),
           "$clusterTime" : {
                   "clusterTime" : Timestamp(1541685032, 1),
                   "signature" : {
                           "hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
                           "keyId" : NumberLong(0)
                   }
           }
   }

添加其他成员

 λ mongod --config "..mongod37017.conf"
2018-11-08T21:52:18.237+0800 I CONTROL  [main] Automatically disabling TLS 1.0, to force-enable TLS 1.0 specify --sslDisabledProtocols "none"

   mongo:PRIMARY> rs.add("127.0.0.1:37017")
   {
           "ok" : 1,
           "operationTime" : Timestamp(1541685236, 1),
           "$clusterTime" : {
                   "clusterTime" : Timestamp(1541685236, 1),
                   "signature" : {
                           "hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
                           "keyId" : NumberLong(0)
                   }
           }
   }
 
 λ mongod --config "..mongod47017.conf"
 2018-11-08T22:01:26.664+0800 I CONTROL  [main] Automatically disabling TLS 1.0, to force-enable TLS 1.0 specify --sslDisabledProtocols "none"
   #这次指定arbiterOnly参数,以为创建一个仲裁接点
   mongo:PRIMARY> rs.add("127.0.0.1:47017",{arbiterOnly:true})
   {
           "ok" : 1,
           "operationTime" : Timestamp(1541685748, 1),
           "$clusterTime" : {
                   "clusterTime" : Timestamp(1541685748, 1),
                   "signature" : {
                           "hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
                           "keyId" : NumberLong(0)
                   }
           }
   }
   #查看副本集的状态信息
   mongo:PRIMARY> db.isMaster()
   {
           "hosts" : [
                   "127.0.0.1:27017",
                   "127.0.0.1:37017"
           ],
           "arbiters" : [
                   "127.0.0.1:47017"
           ],
           "setName" : "mongo",
           "setVersion" : 3,
           "ismaster" : true,
           "secondary" : false,
           "primary" : "127.0.0.1:27017",
           "me" : "127.0.0.1:27017",
           "electionId" : ObjectId("7fffffff0000000000000001"),
           "lastWrite" : {
                   "opTime" : {
                           "ts" : Timestamp(1541685884, 1),
                           "t" : NumberLong(1)
                   },
                   "lastWriteDate" : ISODate("2018-11-08T14:04:44Z"),
                   "majorityOpTime" : {
                           "ts" : Timestamp(1541685884, 1),
                           "t" : NumberLong(1)
                   },
                   "majorityWriteDate" : ISODate("2018-11-08T14:04:44Z")
           },
           "maxBsonObjectSize" : 16777216,
           "maxMessageSizeBytes" : 48000000,
           "maxWriteBatchSize" : 100000,
           "localTime" : ISODate("2018-11-08T14:04:52.091Z"),
           "logicalSessionTimeoutMinutes" : 30,
           "minWireVersion" : 0,
           "maxWireVersion" : 7,
           "readOnly" : false,
           "ok" : 1,
           "operationTime" : Timestamp(1541685884, 1),
           "$clusterTime" : {
                   "clusterTime" : Timestamp(1541685884, 1),
                   "signature" : {
                           "hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
                           "keyId" : NumberLong(0)
                   }
           }
   }

以上副本集创建完成,接下来看下数据同步

   mongo:PRIMARY> show dbs
   admin   0.000GB
   config  0.000GB
   local   0.000GB
   mongo:PRIMARY> use mongo
   switched to db mongo
   mongo:PRIMARY> db.createCollection("test")
   {
           "ok" : 1,
           "operationTime" : Timestamp(1541686077, 1),
           "$clusterTime" : {
                   "clusterTime" : Timestamp(1541686077, 1),
                   "signature" : {
                           "hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
                           "keyId" : NumberLong(0)
                   }
           }
   }
   mongo:PRIMARY> show collections
   test
   

以上就是搭建的全过程,后续学习再补充这块内容~

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/19418.html

相关文章

  • 搭建 MongoDB分片(sharding) / 分区 / 群环境

    摘要:搭建分片分区集群环境安装三台机器关闭防火墙主节点副节点仲裁仲裁主节点副节点副节点仲裁主节点端口分配下载并且安装所有版本二进制文件自行下载改名分别在每台机器建立六个目录,因为不存储数据,只需要建立日志文件目录即可。 搭建 MongoDB分片(sharding) / 分区 / 集群环境 1. 安装 MongoDB 三台机器 关闭防火墙 systemctl stop firewalld.se...

    KunMinX 评论0 收藏0
  • mongoDB 学习笔记纯干货(mongoose、增删改查、聚合、索引、连接、备份与恢复、监控等等)

    摘要:集合名命名规范集合名不能是空字符串。集合名不能含有字符空字符,这个字符表示集合名的结尾。集合名不能以开头,这是为系统集合保留的前缀。有些驱动程序的确支持在集合名里面包含,这是因为某些系统生成的集合中包含该字符。 原始文章链接 - 我的博客:http://www.lovebxm.com/2017/0... MongoDB - 简介 官网:https://www.mongodb.com/ ...

    Java3y 评论0 收藏0
  • MongoDB副本搭建

    摘要:下一小节我会和大家分享如何在真实的生产环境中创建副本集。好了,中副本集的搭建我们就先说到这里,小伙伴们有问题欢迎留言讨论。 我们之前的案例都是在单个节点上实现的,在生产环境中这种做法是有风险的,如果服务宕机、崩溃或者硬盘坏了都会对公司业务造成损失,因此我们需要数据备份。在MongoDB中我们可以通过副本集来实现这一需求,MongoDB副本集(Replica Set)是有自动故障恢复功能...

    RayKr 评论0 收藏0
  • 深入浅出MongoDB 复制

    摘要:申明本文由笔者首发于深入浅出复制中文社区深入浅出复制由于自己开了,所以将之前比较好的文章挪过来便于大家浏览。新增由于网络问题导致失败重试机制。 申明 本文由笔者首发于InfoQ:《深入浅出MongoDB复制》MongoDB中文社区:《深入浅出MongoDB复制》 由于自己开了blog,所以将之前比较好的文章挪过来便于大家浏览。 综述 笔者最近在生产环境中遇到许多复制相关问题,查阅网上资...

    Jacendfeng 评论0 收藏0
  • MongoDB副本配置

    摘要:我们可以在添加节点时指定优先级,如下也可以为已有的节点设置优先级好了,中副本集的配置我们就先说到这里,小伙伴们有问题欢迎留言讨论。 上篇文章我们搭建了MongoDB副本集的环境,验证了数据已经可以成功的复制,本文我们就来看看MongoDB副本集的其他操作。 本文是MongoDB系列的第十六篇文章,了解前面的文章有助于更好的理解本文: 1.Linux上安装MongoDB 2.Mo...

    MartinHan 评论0 收藏0

发表评论

0条评论

CollinPeng

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<