|
********
0.变量
echo "alias date='date \"+%Y-%m-%d %H:%M:%S\" ' ">>~/.bash_profile && source ~/.bash_profile
echo "export PATH=/data/mongodb/apps/mongodb/bin:$PATH" >>/etc/profile && source /etc/profile
1.等到三台机器都启动完了之后。使用mongo客户端登录其中一台mongod服务器
mongo --port 27017
use admin;
config = {_id:"wind",members:[
... {_id:0,host:"192.168.50.110:27017"},
... {_id:1,host:"192.168.50.120:27017"},
... {_id:2,host:"192.168.50.130:27017"}]
};
#输出结果:
{
"_id" : "wind",
"members" : [
{
"_id" : 0,
"host" : "192.168.50.110:27017"
},
{
"_id" : 1,
"host" : "192.168.50.120:27017"
},
{
"_id" : 2,
"host" : "192.168.50.130:27017"
}
]
}
#初始化副本集配置
rs.initiate(config);
#输出结果:
{ "ok" : 1 }
#查看集群节点的状态
rs.status();
{
"set" : "wind",
"date" : ISODate("2015-08-04T06:08:38.151Z"),
"myState" : 1,
"members" : [
{
"_id" : 0,
"name" : "192.168.50.110:27017",
"health" : 1,
"state" : 1,
"stateStr" : "PRIMARY",
"uptime" : 1604,
"optime" : Timestamp(1438668391, 1),
"optimeDate" : ISODate("2015-08-04T06:06:31Z"),
"electionTime" : Timestamp(1438668395, 1),
"electionDate" : ISODate("2015-08-04T06:06:35Z"),
"configVersion" : 1,
"self" : true
},
{
"_id" : 1,
"name" : "192.168.50.120:27017",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 126,
"optime" : Timestamp(1438668391, 1),
"optimeDate" : ISODate("2015-08-04T06:06:31Z"),
"lastHeartbeat" : ISODate("2015-08-04T06:08:36.784Z"),
"lastHeartbeatRecv" : ISODate("2015-08-04T06:08:37.012Z"),
"pingMs" : 6,
"configVersion" : 1
},
{
"_id" : 2,
"name" : "192.168.50.130:27017",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 126,
"optime" : Timestamp(1438668391, 1),
"optimeDate" : ISODate("2015-08-04T06:06:31Z"),
"lastHeartbeat" : ISODate("2015-08-04T06:08:37.010Z"),
"lastHeartbeatRecv" : ISODate("2015-08-04T06:08:37.006Z"),
"pingMs" : 3,
"configVersion" : 1
}
],
"ok" : 1
}
***************************************************************
第四部分:副本集的验证测试
***************************************************************
-------1.测试副本集数据复制功能
---1.1 主节点192.168.50.110:
mongo --host 127.0.0.1 --port 27017
#建立test 数据库。
use test;
#tblorders表插入数据
db.tblorders.insert( { orderno: "A2014089901", pname: "tblorders", scity:"beijing",price : 670 } );
db.tblorders.insert( { orderno: "A2014089902", pname: "snow", scity:"成都" ,price : 1270} );
db.tblorders.insert( { orderno: "A2014089903", pname: "kiki", scity:"重庆",price : 9780 } );
wind:PRIMARY> db.tblorders.find().forEach(printjson);
{
"_id" : ObjectId("55c05976985cda7c357bccd0"),
"orderno" : "A2014089901",
"pname" : "tblorders",
"scity" : "beijing",
"price" : 670
}
{
"_id" : ObjectId("55c05976985cda7c357bccd1"),
"orderno" : "A2014089902",
"pname" : "snow",
"scity" : "成都",
"price" : 1270
}
{
"_id" : ObjectId("55c05976985cda7c357bccd2"),
"orderno" : "A2014089903",
"pname" : "kiki",
"scity" : "重庆",
"price" : 9780
}
--1.2 副本节点192.168.5.120
mon |