linux主从模式,Linux系统mongodb主从模式配置

一、环境

操作系统:# uname -r

2.6.32-358.el6.x86_64

# cat /etc/issue

CentOS release 6.4 (Final)

Kernel \r on an \m

主:192.168.137.148

从:192.168.137.154

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

三、安装#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:#/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:#/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:# /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;                            #查看数据库

local1.203125GB

test0.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;

local1.203125GB

test0.203125GB

test10.203125GB

slave:# /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;

local0.203125GB

test0.203125GB

test10.203125GB

> use test1;

switched to db test1

> db.foo.find({"id":123456})

{ "_id" : ObjectId("542277078091089e1cbfecbc"), "id" : 123456, "name" : "zhangsan" }

数据同步成功

六、常见操作

1)在从服务器上查询主服务器的信息> 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)在主服务器上查询同步状态> 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服务器上查询集合状态> 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服务#killall mongod

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

3)把从服务器以master身份启动#/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方式查看状态9846cdfccda9b029a2541af3a58398c2.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要搭建MongoDB主从数据库的步骤如下: 1. 首先,在主从数据库服务器上执行启动MongoDB数据库的命令。可以同时在主从数据库上执行以下命令: ``` mongod --replSet pzz ``` 2. 等待MongoDB数据库启动后,登录到主库上,并执行以下命令来检查复制集的状态: ``` rs.status() ``` 这将显示复制集的状态信息,包括主库和从库的状态,连接状态等。 3. 创建MongoDB配置文件,该文件将用于在MongoDB启动时按照配置文件的设置来启动。在主库上创建名为`mongod.conf`的配置文件,并将以下内容写入该文件中: ``` bind_ip=0.0.0.0 replSet=pzz ``` 其中,`bind_ip`设置为`0.0.0.0`表示允许来自任意IP地址的连接,`replSet`设置为`pzz`表示复制集的名称为`pzz`。 4. 在主库和从库上分别启动MongoDB数据库,并指定配置文件的路径: ``` mongod --config /usr/local/mongodb/mongod.conf ``` 这将根据配置文件的设置启动MongoDB数据库,并将其加入到复制集中。 5. 在主库上初始化复制集。登录到主库上,执行以下命令: ``` rs.initiate() ``` 这将初始化复制集,并将主库的配置信息与其他从库分享。 6. 将从库添加到复制集中。登录到从库上,执行以下命令: ``` rs.add("192.168.0.7:27017") ``` 这将将从库添加到复制集中,其IP地址为`192.168.0.7`,端口为`27017`。 7. 现在,你已经成功搭建了MongoDB主从数据库。可以使用`rs.status()`命令来检查复制集的状态,并确保主从同步正常工作。 请注意,以上步骤中的IP地址和端口号应根据你的实际情况进行调整。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [MongoDB详解(六)——MongoDB主从同步配置](https://blog.csdn.net/weixin_40228200/article/details/125242592)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [详解mongoDB主从复制搭建详细过程](https://download.csdn.net/download/weixin_38674223/13703043)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值