版本4.0.9
该版本已经没有了主从复制,下面要说的是副本集(mongodb复制)。
副本集的概念这里不说了。
成员:主节点(Primary)、从节点(Secondary)、仲裁节点(Arbiter)
1.命令窗口的启动配置
关闭正在运行的 MongoDB 服务器
新建几个文件夹
D:\mongodb\data、D:\mongodb1\data、D:\mongodb2\data 和 D:\mongodb\log、D:\mongodb1\log、D:\mongodb2\log
打开cmd 定位到mongodb的bin目录
通过指定 --replSet 选项来启动mongoDB。--replSet 基本语法格式如下:
mongod --port
"PORT"
--dbpath
"YOUR_DB_DATA_PATH"
--replSet
"REPLICA_SET_INSTANCE_NAME"
PORT:端口号 YOUR_DB_DATA_PATH:数据库路径 REPLICA_SET_INSTANCE_NAME:
复制集实例名
既: mongod --port 27017 --dbpath D:\mongodb\data --replSet myRep
mongod --port 27018 --dbpath D:\mongodb1\data --replSet myRep
mongod --port 27019 --dbpath D:\mongodb2\data --replSet myRep
注:每次都新打开一个cmd窗口!!!!
启动
继续启动剩余两个
打开mongo
初始化副本集:rs.initiate()
添加节点,把从节点和仲裁节点添加到注节点上。
rs.add(
"127.0.0.1:27018"
)
rs.addArb(
"127.0.0.1:27019"
)
也可以直接初始化副本集:
rs.initiate(
{
_id: "myRep",
members: [
{ _id: 0, host : "127.0.0.1:27017", priority:3 },
{ _id: 1, host : "127.0.0.1:27018", priority:2 },
{ _id: 2, host : "127.0.0.1:27019", arbiterOnly:true },
]
}
)
这时候就启动完毕,可以用视图工具插入数据,查看从节点是否变化。
2.
Windows本地服务配置启动
我们在windows上用的是安装板,第一次安装会添加本地服务,通过启动本地服务来启动mongodb实例。
我们可以把副本集添加到本地服务上,更加方便(这才是windows的快捷用法)。
复制添加 mongod.cfg
配置 cfg
其余几个配置文件只需要需改数据库和日志地址以及端口号,如图mongod.cfg0配置:
添加到 windows 本地服务
以管理员身份打开cmd,定位到bin目录下,
添加服务:
mongod -config "E:\Installcation\Installcation\mongodb\bin\mongod3.cfg" --serviceName "MongoDB0" --install --serviceDisplayName "MongoDB0 SERVER"
剩余几个服务大同小异。添加完毕后,检查:
启动各个服务,初始化副本集,添加节点。
这样每次不需要打开多个cmd窗口来启动副本集,只需要启动本地服务即可。
注:删除本地服务。 管理员身份打开cmd,输入: sc delete 服务名称
如果配置好了cfg文件也可以这样启动
mongod --port 27017 --dbpath D:\mongodb\data --replSet reps
mongod --port 27020 --dbpath D:\mongodb0\data --replSet reps
mongod --port 27021 --dbpath D:\mongodb1\data --replSet reps