700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > mongodb添加创建修改时间_mongodb副本集生产环境下部署案例 推荐一个主两个从三台机器...

mongodb添加创建修改时间_mongodb副本集生产环境下部署案例 推荐一个主两个从三台机器...

时间:2019-11-24 08:21:03

相关推荐

mongodb添加创建修改时间_mongodb副本集生产环境下部署案例 推荐一个主两个从三台机器...

Linux中部署Mongodb副本集

提示:

以下操作步骤较多,请耐心阅读。

关于理论部分请参考上篇浅谈mongodb副本集。

1、 准备

192.168.102.110 master

192.168.102.111 slave1

192.168.102.112 slave2

以下操作以常用的1主2从3台机器为例

2、 操作

以master为例,配置好一台再scp到slave1、slave2

2.1、准备好mongodb

2.2、创建数据库目录和日志文件、配置文件、mongo.pid文件

[root@odysee mongodb4.0]# mkdir data/db -p

[root@odysee mongodb4.0]# mkdir {etc,logs}

[root@odysee mongodb4.0]# touch logs/mongodb.log

[root@odysee mongodb4.0]# touch etc/mongodb.conf

创建mongo.pid文件

touch mongo.pid

2.3、配置mongodb.conf文件

port=27017

bind_ip=192.168.102.110

dbpath=/root/General/mongodb4.0/data/db/

logpath=/root/General/mongodb4.0/logs/mongodb.log

pidfilepath=/root/General/mongodb4.0/mongo.pid

fork=true

logappend=true

shardsvr=true

directoryperdb=true

#auth=true

#keyFile=/root/General/mongodb4.0/keyfile

#副本集名字

replSet=odysee

3、 编写启动脚本

[root@odysee mongodb4.0]# vi /etc/init.d/mongod

写入

#!/bin/bash

# chkconfig: - 64 36

# description: this is mongod

case $1 in

start)

/root/General/mongodb4.0/bin/mongod --maxConns 20000 --config /root/General/mongodb4.0/etc/mongodb.conf

;;

stop)

/root/General/mongodb4.0/bin/mongo 192.168.102.110:27017/admin --eval "db.shutdownServer()"

#/root/General/mongodb4.0/bin/mongo 192.168.102.110:27017/admin --eval "db.auth('system', '123456');db.shutdownServer()"

;;

status)

/root/General/mongodb4.0/bin/mongo 192.168.102.110:27017/admin --eval "db.stats()"

#/root/General/mongodb4.0/bin/mongo 192.168.102.110:27017/admin --eval "db.auth('system', '123456');db.stats()"

;; esac

启动master节点

注意:

给mongod执行的权限

chmod a+x /etc/init.d/mongod

/etc/init.d/mongod start

4、 Scp mongodb4.0和mongod.conf文件到slave1和slave2

将mongodb4.0 远程cp的slave1

scp -r ~/General/mongodb4.0/ root@192.168.102.111:~/General/

将mongodb4.0 远程cp的slave2

scp -r ~/General/mongodb4.0/ root@192.168.102.112:~/General/

将mongod.conf 远程cp的slave1

scp /etc/init.d/mongod root@192.168.102.111:/etc/init.d/

将mongod.conf 远程cp的slave2

scp /etc/init.d/mongod root@192.168.102.112:/etc/init.d/

修改slave1 mongodb.conf的ip

修改slave2 mongodb.conf的ip

修改slave1 mongod的ip

修改slave2 mongod的ip

启动slave1

/etc/init.d/mongod start

启动slave2

/etc/init.d/mongod start

5、配置主节点

5.1、利用mongo登录

bin/mongo 192.168.102.110

5.2、初始化副本集,设置本机为主节点

rs.initiate()

rs.conf()

注意:

执行上面的两个命令后,前缀已经改成odysee:PRIMARY>

5.3、添加副本集从节点

添加slave1

rs.add("192.168.102.111:27017")

添加slave2

rs.add("192.168.102.112:27017")

5.4、设置节点优先级

查看节点顺序

cfg = rs.conf()

设置节点优先级

odysee:PRIMARY> cfg.members[0].priority = 1

1

odysee:PRIMARY> cfg.members[1].priority = 1

1

odysee:PRIMARY> cfg.members[2].priority = 2

2

//使配置生效

odysee:PRIMARY> rs.reconfig(cfg)

注意:

主节点发生故障时,优先级高的节点就会转变为主节点接管服务。

提示:

副本集通过设置priority决定优先级,默认优先级为1。

priority值是0到100之间的数字,数字越大优先级越高。

若priority=0,则此节点永远不能成为主节点primay。

6、配置slave1和slave2

Slave1

bin/mongo 192.168.102.111

//设置Slave1为只读

odysee:SECONDARY> db.getMongo().setSlaveOk()

odysee:SECONDARY>

Slave2

bin/mongo 192.168.102.112

//设置Slave2为只读

odysee:SECONDARY> db.getMongo().setSlaveOk()

odysee:SECONDARY>

7、设置数据库账号

添加两个管理员账号:

一个系统管理员:system

一个数据库管理员:administrator

在master操作

db.createUser({user:"system

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。