MongoDB集群搭建

MongoDB集群搭建

一.安装MongoDB
1.官网下载MongoDB
2.解压
tar -zxvf mongodb-linux-x86_64-amazon-3.6.0.tgz
3.配置环境变量
## 编辑
vim /etc/profile
## 后面追加解压后mongodb的bin文件路径
export PATH=$PATH:/usr/data/mongodb-linux-x86_64-amazon-3.6.0/bin
#使配置立即生效
source /etc/profile
二.搭建master-slave-arbiter模式
1.准备机器、端口、路径
## 创建目录
mkdir -p replset1/master/data
mkdir -p replset1/master/logs
mkdir -p replset1/slaver/data
mkdir -p replset1/slaver/logs
mkdir -p replset1/arbiter/data
mkdir -p replset1/arbiter/logs
## 创建配置文件
vim mongodb.cfg
## master内容
dbpath=/usr/data/mongodb/replset1/master/data
logpath=/usr/data/mongodb/replset1/master/logs/mongodb.log
logappend=true
fork=true
bind_ip=192.168.17.128
port=28001
replSet=shard001
shardsvr=true
## slaver内容
dbpath=/usr/data/mongodb/replset1/slaver/data
logpath=/usr/data/mongodb/replset1/slaver/logs/mongodb.log
logappend=true
fork=true
bind_ip=192.168.17.128
port=28002
replSet=shard001
shardsvr=true
## arbiter内容
dbpath=/usr/data/mongodb/replset1/arbiter/data
logpath=/usr/data/mongodb/replset1/arbiter/logs/mongodb.log
logappend=true
fork=true
bind_ip=192.168.17.128
port=28003
replSet=shard001
shardsvr=true
2.启动集群

启动上面三个MongoDB

## 启动
mongod -f mongodb.cfg
## 查看
netstat -anp|grep mongod
3.集群建立连接
## 客户端连接其中一台数据库
mongo --host 192.168.17.128 --port 28001
use admin
## 定义配置
cfg={_id:"shard001",members:[{_id:0,host:'192.168.17.128:28001',priority:1},{_id:1,host:'192.168.17.128:28002',priority:99},{_id:2,host:'192.168.17.128:28003',arbiterOnly:true}] };
## 启用配置
rs.initiate(cfg)
rs.status()
三.搭建非仲裁模式(推荐)
1.准备机器、端口、路径
## 创建目录
mkdir -p replset2/one/data
mkdir -p replset2/one/logs
mkdir -p replset2/two/data
mkdir -p replset2/two/logs
mkdir -p replset2/three/data
mkdir -p replset2/three/logs
## 创建配置文件
vim mongodb.cfg
## one内容
dbpath=/usr/data/mongodb/replset2/one/data
logpath=/usr/data/mongodb/replset2/one/logs/mongodb.log
logappend=true
fork=true
bind_ip=192.168.17.128
port=29001
replSet=shard002
shardsvr=true
## two内容
dbpath=/usr/data/mongodb/replset2/two/data
logpath=/usr/data/mongodb/replset2/two/logs/mongodb.log
logappend=true
fork=true
bind_ip=192.168.17.128
port=29002
replSet=shard002
shardsvr=true
## three内容
dbpath=/usr/data/mongodb/replset2/three/data
logpath=/usr/data/mongodb/replset2/three/logs/mongodb.log
logappend=true
fork=true
bind_ip=192.168.17.128
port=29003
replSet=shard002
shardsvr=true
2.启动集群

启动上面三个MongoDB

## 启动
mongod -f mongodb.cfg
## 查看
netstat -anp|grep mongod
3.集群建立连接
## 客户端连接其中一台数据库
mongo --host 192.168.17.128 --port 29001
use admin
## 定义配置
cfg={_id:"shard002",members:[{_id:0,host:'192.168.17.128:29001',priority:1},{_id:1,host:'192.168.17.128:29002',priority:2},{_id:2,host:'192.168.17.128:29003',priority:3}] };
## 启用配置
rs.initiate(cfg)
rs.status()
四.搭建配置服务副本集
1.准备机器、端口、路径
## 创建目录
mkdir -p configsvr/one/data
mkdir -p configsvr/one/logs
mkdir -p configsvr/two/data
mkdir -p configsvr/two/logs
mkdir -p configsvr/three/data
mkdir -p configsvr/three/logs
## 创建配置文件
vim mongodb.cfg
## one内容
dbpath=/usr/data/mongodb/configsvr/one/data
logpath=/usr/data/mongodb/configsvr/one/logs/mongodb.log
logappend=true
fork=true
bind_ip=192.168.17.128
port=30001
replSet=configrs
configsvr=true
## two内容
dbpath=/usr/data/mongodb/configsvr/two/data
logpath=/usr/data/mongodb/configsvr/two/logs/mongodb.log
logappend=true
fork=true
bind_ip=192.168.17.128
port=30002
replSet=configrs
configsvr=true
## three内容
dbpath=/usr/data/mongodb/configsvr/three/data
logpath=/usr/data/mongodb/configsvr/three/logs/mongodb.log
logappend=true
fork=true
bind_ip=192.168.17.128
port=30003
replSet=configrs
configsvr=true
2.启动集群

启动上面三个MongoDB

## 启动
mongod -f mongodb.cfg
## 查看
netstat -anp|grep mongod
3.集群建立连接
## 客户端连接其中一台数据库
mongo --host 192.168.17.128 --port 30001
use admin
## 定义配置
cfg={_id:"configrs",members:[{_id:0,host:'192.168.17.128:30001'},{_id:1,host:'192.168.17.128:30002'},{_id:2,host:'192.168.17.128:30003'}] };
## 启用配置
rs.initiate(cfg)
rs.status()
五.搭建路由副本集
1.准备机器、端口、路径
## 创建目录
mkdir -p router/one/logs
## 创建配置文件
vim mongodb.cfg
## one内容
configdb=configrs/192.168.17.128:30001,192.168.17.128:30002,192.168.17.128:30003
logpath=/usr/data/mongodb/router/one/logs/mongodb.log
logappend=true
fork=true
bind_ip=192.168.17.128
port=40001
2.启动集群

启动上面三个MongoDB

## 启动
mongod -f mongodb.cfg
## 查看
netstat -anp|grep mongod
3.集群建立连接
## 客户端连接其中一台数据库
mongo --host 192.168.17.128 --port 40001
#配置Sharding
sh.addShard("shard001/192.168.17.128:28001");
sh.addShard("shard002/192.168.17.128:29001");
## 启用配置
use testdb
sh.enableSharding("testdb")
sh.shardCollection("testdb.testcon",{"name":"hashed"})

## 测试
for(var i =0;i< 100;i++) db.testcon.insert({name:'蒙恩'+i,age:i});
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值