mongo安装副本集

mongo安装副本集


wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.4.tgz
tar zxvf mongodb-linux-x86_64-3.0.4.tgz
cp -rf mongodb-linux-x86_64-3.0.4 /usr/local/


创建文件夹

mkdir /shard/replset27017/
mkdir /shard/replset27018/
mkdir /shard/replset27019/

chmod -R 777 /shard/replset27017/
chmod -R 777 /shard/replset27018/
chmod -R 777 /shard/replset27019/

创建多个副本集节点 --replSet   (注意要区分大小写,官方建议命名空间使用IP地址)
/usr/local/mongodb-linux-x86_64-3.0.4/bin/mongod -shardsvr -port 27017  --replSet replset/127.0.0.1:27018 -dbpath=/shard/replset27017/ --storageEngine wiredTiger -logpath=/shard/replset27017.log --fork
/usr/local/mongodb-linux-x86_64-3.0.4/bin/mongod -shardsvr -port 27018  --replSet replset/127.0.0.1:27019 -dbpath=/shard/replset27018/ --storageEngine wiredTiger -logpath=/shard/replset27018.log --fork
/usr/local/mongodb-linux-x86_64-3.0.4/bin/mongod -shardsvr -port 27019  --replSet replset/127.0.0.1:27017 -dbpath=/shard/replset27019/ --storageEngine wiredTiger -logpath=/shard/replset27019.log --fork

首先建立3个是为了投票不会冲突,当服务器为偶数时可能会导致无法正常选举出主服务器。


完成上面的工作后,要初始化副本集,随便连接一台服务器执行以下命令 (priority 0~1,被选为主服务器的优先级)
/usr/local/mongodb-linux-x86_64-3.0.4/bin/mongo


>use admin
>db.runCommand(
{"replSetInitiate":{
    "_id":"replset",
    "members":[
    {
        "_id":1,
        "host":"127.0.0.1:27017",


        "priority":1
    },
   {
        "_id":2,
        "host":"127.0.0.1:27018",


        "priority":1
   },
  {
        "_id":3,
        "host":"127.0.0.1:27019",
        "priority":1
   }]}}
)


查看哪台机器是主机哪台是从机?
rs.status()
查看配置
rs.conf()




增加节点:/usr/local/mongodb-linux-x86_64-3.0.4/bin/mongod -shardsvr -port 27020  --replSet replset/127.0.0.1:27017 -dbpath=/shard/replset27020/ --storageEngine wiredTiger -logpath=/shard/replset27020.log --fork


rs.add("127.0.0.1:27020");   或者rs.add({"_id":4,"host":"127.0.0.1:27020"})


尝试杀掉一个mongo看看,另外两台是否可以自动选择主从?

你可能感兴趣的:(Nosql)