设为首页 收藏本站
查看: 1065|回复: 0

[经验分享] Linux系统mongodb主从模式配置

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2014-9-25 12:58:35 | 显示全部楼层 |阅读模式
一、环境

    操作系统:
1
2
3
4
5
# uname -r
2.6.32-358.el6.x86_64
# cat /etc/issue
CentOS release 6.4 (Final)
Kernel  on an m



    主:192.168.137.148

    从:192.168.137.154

二、主从同步系统时间
1
#ntpdate ntp.api.bz && hwclock -w --systohc



三、安装

1
2
3
4
5
#wget
#tar xf mongodb-linux-x86_64-enterprise-rhel62-2.6.4.tgz
#mv mongodb-linux-x86_64-enterprise-rhel62-2.6.4 /usr/local/mongodb
#[ ! -e /data/mongodb/data ] && mkdir -p /data/mongodb/data || echo '/data/mongodb/data is exist!'
#[ ! -e /data/mongodb/mongodb.log ] && touch /data/mongodb/mongodb.log || echo '/data/mongodb/mongodb.log is exist!'



四、启动服务
mongodb master:
1
#/usr/local/mongodb/bin/mongod --master --bind_ip=192.168.137.148 --dbpath=/data/mongodb/data --logpath=/data/mongodb/mongodb.log --logappend --port=27017 --fork



mongodb slave:
1
#/usr/local/mongodb/bin/mongod --slave --bind_ip=192.168.137.154 --source 192.168.137.148:27017 --dbpath=/data/mongodb/data --logpath=/data/mongodb/mongodb.log --logappend --port=27017 --fork



五、测试
master:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# /usr/local/mongodb/bin/mongo --host 192.168.137.148
MongoDB shell version: 2.6.4
connecting to: 192.168.0.23:27017/test
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
    http://docs.mongodb.org/
Questions? Try the support group
    http://groups.google.com/group/mongodb-user
Server has startup warnings:
2014-09-24T14:16:58.169+0800 [initandlisten]
2014-09-24T14:16:58.169+0800 [initandlisten] ** WARNING: You are running on a NUMA machine.
2014-09-24T14:16:58.169+0800 [initandlisten] **          We suggest launching mongod like this to avoid performance problems:
2014-09-24T14:16:58.169+0800 [initandlisten] **              numactl --interleave=all mongod [other options]
2014-09-24T14:16:58.169+0800 [initandlisten]
> show dbs;                            #查看数据库
local   1.203125GB
test    0.203125GB
> use test1;                            #新建库
switched to db test1
> db.foo.save({"id":123456,"name":'zhangsan'})       #插入数据
> db.foo.find({"id":123456})            #查询数据
{ "_id" : ObjectId("542277078091089e1cbfecbc"), "id" : 123456, "name" : "zhangsan" }
> show dbs;
local   1.203125GB
test    0.203125GB
test1   0.203125GB



slave:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# /usr/local/mongodb/bin/mongo --host 192.168.137.148
MongoDB shell version: 2.6.4
connecting to: 192.168.0.23:27017/test
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
    http://docs.mongodb.org/
Questions? Try the support group
    http://groups.google.com/group/mongodb-user
Server has startup warnings:
2014-09-24T14:16:58.169+0800 [initandlisten]
2014-09-24T14:16:58.169+0800 [initandlisten] ** WARNING: You are running on a NUMA machine.
2014-09-24T14:16:58.169+0800 [initandlisten] **          We suggest launching mongod like this to avoid performance problems:
2014-09-24T14:16:58.169+0800 [initandlisten] **              numactl --interleave=all mongod [other options]
2014-09-24T14:16:58.169+0800 [initandlisten]
> show dbs;
local   0.203125GB
test    0.203125GB
test1   0.203125GB
> use test1;
switched to db test1
> db.foo.find({"id":123456})
{ "_id" : ObjectId("542277078091089e1cbfecbc"), "id" : 123456, "name" : "zhangsan" }



数据同步成功
六、常见操作
1)在从服务器上查询主服务器的信息
1
2
3
4
5
6
7
8
> use local;
switched to db local
> show collections;
me
sources
system.indexes
> db.sources.find()
{ "_id" : ObjectId("541d8f661037aa7d865374d0"), "host" : "192.168.137.148:27017", "source" : "main", "syncedTo" : { "t" : 1411545377000, "i" : 1 } }



2)在主服务器上查询同步状态
1
2
3
4
5
6
> db.printReplicationInfo();
configured oplog size:   944.1375732421875MB
log length start to end: 420339secs (116.76hrs)
oplog first event time:  Fri Sep 19 2014 19:15:28 GMT+0800 (CST)
oplog last event time:   Wed Sep 24 2014 16:01:07 GMT+0800 (CST)
now:                     Wed Sep 24 2014 16:01:11 GMT+0800 (CST)



3)在master服务器上查询集合状态
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
> db.printCollectionStats();
foo
{
    "ns" : "test1.foo",
    "count" : 1,
    "size" : 56,
    "avgObjSize" : 56,
    "storageSize" : 4096,
    "numExtents" : 1,
    "nindexes" : 1,
    "lastExtentSize" : 4096,
    "paddingFactor" : 1,
    "flags" : 1,
    "totalIndexSize" : 8176,
    "indexSizes" : {
        "_id_" : 8176
    },
    "ok" : 1
}
---
system.indexes
{
    "ns" : "test1.system.indexes",
    "count" : 1,
    "size" : 64,
    "avgObjSize" : 64,
    "storageSize" : 4096,
    "numExtents" : 1,
    "nindexes" : 0,
    "lastExtentSize" : 4096,
    "paddingFactor" : 1,
    "flags" : 0,
    "totalIndexSize" : 0,
    "indexSizes" : {
         
    },
    "ok" : 1
}
---



七、主从切换
1)停掉slave服务
1
#killall mongod



2)删除local数据
1
#rm -rf /data/mongodb/data/local.*



3)把从服务器以master身份启动
1
#/usr/local/mongodb/bin/mongod --master --bind_ip=192.168.137.154 --dbpath=/data/mongodb/data --logpath=/data/mongodb/mongodb.log --logappend --port=27017 --fork



4)以web方式查看状态 wKioL1QifmrQbd4rAAQNq6bo4Ag351.jpg


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-25384-1-1.html 上篇帖子: PHP操作MongoDB打模块 linux下,详细截图介绍(七) 下篇帖子: mongoDB安装for NT Linux
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表