1

MongoDB部署方式分为3种

  1. 主备(Master-slave
  2. 复制集(或叫副本集,Replica Set
  3. 分片集群(Sharding

现在需要在Windows环境下以复制集的方式进行部署
当然首先是下载MongoDB

image.png

选择版本,平台,然后就是无脑下载安装了

接下来我们需要部署,先说说几种部署方式之间的区别

  1. 主备,就是主节点一个,从节点一个

image.png

  1. 复制集,主节点一个,从节点多个,可以用投票节点(主节点挂了,可以进行投票)

image.png

  1. 分片集群

image.png

网上其实也有一些部署复制集的方式,但我感觉说得不够简练,装好MongoDB后,因为要以复制集部署,刚才的图也看到了,需要起3个 MongoDB节点,也就是Master主节点,Slave从节点以及Arbiter选举节点,所以我们随便选一个文件夹,创建三个不同的文件夹表示不同的节点
image.png

每一个节点还需要一个日志文件,就分别每个文件夹下创建一个mongo.log空文件(我以master文件夹举例)
image.png

就完了,之前网上有什么复制配置文件啥的,感觉很麻烦

为了方便操作MongoDB的命令,可以选择去系统的环境变量的path里加上MongoDB安装目录下的bin路径

好了,之后win+r输入cmd运行打开命令行,我们要启动三个节点了

如果你已经加了路径了,直接就输入下面命令

mongod -port 27111 -dbpath C:\work\program\mongodb\master -logpath C:\work\program\mongodb\master\mongo.log -replSet mySet -logappend

如果没有加路径,就先cdMongoDB的安装目录下的bin路径,然后再输入上面的命令

其中路径就挨个改成自己的路径,那个mySet就是一个名字,复制集名字,可以自定义,启动好了,就会这样等待,没有任何显示

image.png

然后再开一个命令行,继续执行命令

mongod -port 27112 -dbpath C:\work\program\mongodb\slave -logpath C:\work\program\mongodb\slave\mongo.log -replSet mySet -logappend

除了端口不一样,路径不一样,其他保持一致
最后一个继续

mongod -port 27113 -dbpath C:\work\program\mongodb\arbiter -logpath C:\work\program\mongodb\arbiter\mongo.log -replSet mySet -logappend

三个节点都启动好了,但是它们现在只是单独按照节点的方式启动起来,并没有组成复制集,所以接下来,把它们部署成复制集

再起一个cmd,输入如下命令进入27111的数据库(如果你没有配置路径,还是需要先cdMongoDBbin路径下,才能执行如下命令)

mongo -port 27111

进入数据库后,再执行下面的绑定命令,就OK啦(注意绑定的名字也要是之前定义的mySet

rs.initiate({"_id":"mySet",members:[{_id:0,host:"127.0.0.1:27111"},{_id:1,host:"127.0.0.1:27112"},{_id:2,host:"127.0.0.1:27113"}]})

你可以输入命令rs.status()查看各个节点的状态信息
image.png
image.png

其中health1表示正常,state1表示主节点,也就是stateStrPRIMARY


imango
3k 声望113 粉丝