mongodb的Master-Slaver集群的搭建
部署应用(模拟部署)(所有的命令都在mongodb文件的安装目录中的bin文件夹中执行,分别是c、d、e盘的文件夹)
安装mongodb
在自己的电脑上,将mongodb的安装后(一开始是安装在d盘的)的文件复制两份,一份放在c盘,一份放在e盘
开启一个master
1 | mongodb --dbpath=d:\software\mongodb\db --master |
–master指定为主数据库端口号默认为27017
开启两个slave
分别在c盘和e盘开启两个slave,–slave指定为备份数据库,–source为master的ip地址和端口号
1 | mongod --dbpath=c:\mongodb\db --port=8888 --slave --source=127.0.0.1:27017 |
连接客户端
分别在每个盘的mongodb的bin目录下执行,打开shell命令
1 | mongo 127.0.0.1:27017 |
读写验证
在master的shell命令中插入两条数据
1 | db.person.insert({name:”jack”,age:25}) |
其他的两个shell的中执行查看:
1 | db.person.find() |
发现数据已经同步。
读写分离
通过驱动链接到mongodb时,默认master能读写,slave不能读也不能写,但是连接时通过显示的指定mongoClient.slaveOk()就可以读取这个slave的数据了。
总结
这种方式部署的mongodb数据库,并不够灵活,当master宕机以后,slave不能自动成为master,只能当成一个读取的数据库。并且官方已经不推荐这种集群部署了。