mongo(五)副本集

简介:

配置文件

1-3为三个存储节点,其实一个为Primary,两个secondary作为备份,4为仲裁节点
复制代码
# mongod.conf

#where to log
logpath=/home/data/db/mongodb2.log

logappend=true

# fork and run in background
fork=true

port=33197

dbpath=/home/yuxianda/data/db/db2

# location of pidfile
pidfilepath=/home/yuxianda/data/db/mongod2.pid

# Listen to local interface only. Comment out to listen on all interfaces. 
bind_ip=127.0.0.1

#datebase in diffrent file
directoryperdb=true

# fsync time
#syncdelay=5

# Disables write-ahead journaling
# nojournal=true

# Enables periodic logging of CPU utilization and I/O wait
#cpu=true

# Turn on/off security.  Off is currently the default
#noauth=true
#auth=true

# Verbose logging output.
#verbose=true

# Inspect all client data for validity on receipt (useful for
# developing drivers)
#objcheck=true

# Enable db quota management
#quota=true

# Set oplogging level where n is
#   0=off (default)
#   1=W
#   2=R
#   3=both
#   7=W+some reads
#diaglog=0

# Ignore query hints
#nohints=true

# Enable the HTTP interface (Defaults to port 28017).
#httpinterface=true

# Turns off server-side scripting.  This will result in greatly limited
# functionality
#noscripting=true

# Turns off table scans.  Any query that would do a table scan fails.
#notablescan=true

# Disable data file preallocation.
#noprealloc=true

# Specify .ns file size for new databases.
# nssize=<size>

# Replication Options

# in replicated mongo databases, specify the replica set name here
replSet=android-test
# maximum size in megabytes for replication operation log
#oplogSize=1024
# path to a key file storing authentication info for connections
# between replica set members
#keyFile=/path/to/keyfile
复制代码

执行配置

mongod -f conf.conf
 

设定副本集合:

mongo --port 33198
use admin
复制代码
db.runCommand({"replSetInitiate":{
    "_id":"android-test",
    "members":[
    {
          "_id":1,
          "host":"127.0.0.1:33198"
    },
     {
          "_id":2,
          "host":"127.0.0.1:33197"
    },
     {
          "_id":3,
          "host":"127.0.0.1:33196"
    }
    ]}})
复制代码

增加仲裁节点

rs.addArb("127.0.0.1:33195")
 
复制代码
#!/usr/bin/env python
#-*- encoding:utf-8 -*-

from pymongo import MongoClient, MongoReplicaSetClient

dbList = '127.0.0.1:33198,127.0.0.1:33197,127.0.0.1:33196'


def init(dbname):
    try:
        client = MongoReplicaSetClient(dbList, replicaSet='android-    test')
        db = client[dbname]
        return db
    except Exception as e:
        print 'error:%s'%e
        return False

if __name__ == '__main__':
    db = init('test')
print db.appinfo.find_one()    
复制代码

 

 



知识共享许可协议
本文 由 cococo点点 创作,采用 知识共享 署名-非商业性使用-相同方式共享 3.0 中国大陆 许可协议进行许可。欢迎转载,请注明出处:
转载自:cococo点点 http://www.cnblogs.com/coder2012


相关文章
|
5月前
|
NoSQL Cloud Native MongoDB
MongoDB 主从集群 2
MongoDB 主从集群 2
|
5月前
|
存储 NoSQL 网络协议
MongoDB 主从集群 1
MongoDB 主从集群 1
|
9月前
|
NoSQL MongoDB 数据库
【mongo 系列】mongodb 学习九,MongoDB 主从集群 2
继续咱们 mongodb 集群的学习和分享 上次分享了 mongodb 主从集群的同步机制(oplog),心跳机制,这次我们继续看看选举机
|
8月前
|
NoSQL MongoDB 数据库
MongoDB-复制集特点
MongoDB 复制集特点 !> 复制集中必须有一个主节点 • 主节点主要负责写入数据和读取 • 复制集中除了主节点以外的节点我们称之为 副节点: • 副节点默认情况下只能读取数据, 不能写入数据 • 副节点主要负责从主节点不断复制数据
35 0
|
9月前
|
存储 NoSQL 网络协议
【mongo 系列】mongodb 学习八,MongoDB 主从集群 1
说到集群,生产环境中很多服务都会进行集群部署,那么 mongodb 的集群都有哪些知识点需要掌握呢
104 0
|
9月前
|
存储 NoSQL MongoDB
【mongo 系列】mongodb 学习十,MongoDB 分片集群
之前说到了主从集群,关于主从集群的搭建以及细节后面会再次分享,这次我们先初步来看看 分片集群
116 0
|
存储 NoSQL 前端开发
MongoDB——副本集与分片
 MongoDB复制是将数据同步在多个服务器的过程。
849 0
MongoDB——副本集与分片
|
存储 NoSQL JavaScript
mongodb副本集
副本集介绍 mongodb的集群大体分为两种模式,副本集模式和分片模式。副本集模式包括无仲裁者和有仲裁者的副本集。 副本集中包含一个Primary节点和多个Secondary节点,primary负责数据的写入,secondary从Primary同步写入的数据,保证副本集内数据的同步,提供数据的高可用。
919 0
mongodb副本集
|
NoSQL MongoDB 数据库
MongoDB副本集
MongoDB 副本集
1900 0
|
JavaScript NoSQL Shell
MongoDB副本集初探
副本集是一组服务器,其中有一个主节点(Primary),用于处理客户的请求;还有多个备份节点(Secondary),用于保存主节点的数据副本。如果主节点崩溃了,备份节点会自动将其中一个成员升级为新的主节点。
3836 0