第7.1.3 mongo3.0.x一主一从

我在第7.1.1Spring操作mongodb之mongodb4.x集群搭建中已经描述了mongodb4.x集群的搭建,为什么再描述mongo3.0.x主从复制,是因为我们有两台其他人搭建的mongo3.0.x,他是主从模式,现在磁盘空间快慢了,我需要想办法处理一下
1
既然是主从模式,那么主库可以读写,而从库只能读。参考MongoDB 3.0 常见集群的搭建(主从复制,副本集,分片…)
一主一从模式的集群很简单,但是[MongDB] 主从架构–官方极力不推荐
主节点的mongodb.conf

#数据文件存放目录  
#dbpath = /app/data/db/
dbpath = /appnew/data/db/
#日志文件存放目录  
logpath = /application/mongodb/logs/mongodb.log 
bind_ip= 10.101.3.197
#端口  
port = 27017  
#以守护程序的方式启用,即在后台运行  
fork = true  
nohttpinterface = true
##副本配置
replSet=mongoTest

从节点的mongodb.conf

#数据文件存放目录  
#dbpath = /app/data/db/
dbpath = /appnew/data/db/
#日志文件存放目录  
logpath = /application/mongodb/logs/mongodb.log 
bind_ip=10.101.3.198
#端口  
port = 27017  
#以守护程序的方式启用,即在后台运行  
fork = true  
nohttpinterface = true
##副本配置
replSet=mongoTest

在主和从节点,执行命令mongod -f ./mongodb.conf --replSet mongoTest就可以了。
这样的主从复制模式,劣势很明显。数据严重冗余,单台500G的磁盘,另外一台也会有500G的磁盘空间的消耗,水平扩展就比较困难了。如果有多块磁盘,能够垂直扩展呢?
这里仿照MongoDB解决磁盘不足使用软连接的方式,来解决这个问题
红色方框中磁盘使用90%,而蓝色磁盘只使用了35%。
1
创建软链接,接着修改mongodb.conf,重启mongodb。

ln -s /application/mongodb-linux-x86_64-4.0.4/data /application/mongo/data
ln -s /app/data /application/mongo/data

那么这样是否问题就解决了?文章指出要开启directoryperdb,这个参数怎么起作用呢?
mogodb之directoryperdb作用,根据数据库划分磁盘,需要事先规划好,如果没有规划好,就只能备份再再做迁移了。
执行db.my_col.stats(),可以看到主从模式是没有分片的
1
删除数据,mongo的空间并不会释放,必须执行db.repairDatabase(),注意要留2G的空间
在主库中执行db.my_col.remove({}),并不会释放从库的空间,从库无法执行remove操作,但可以执行db.repairDatabase()操作,空间才可以释放
如果执行db.dropDatabase(),空间会立即释放,但是删除集合或者集合中的数据,却不会。
我在生产环境执行提示了下面的错误,这是为什么呢?

{
	"message" : "no such cmd: repairDatabase",
	"ok" : 0,
	"code" : 59,
	"codeName" : "CommandNotFound",
	"operationTime" : "Timestamp(1559005119, 1)",
	"$clusterTime" : {
		"clusterTime" : "Timestamp(1559005119, 1)",
		"signature" : {
			"hash" : "AAAAAAAAAAAAAAAAAAAAAAAAAAA=",
			"keyId" : 0
		}
	},
	"name" : "MongoError"
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

warrah

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值