mongodb分片
现代社会上,网上访问量会很大,尤其是电商等行业,因此才需要数据库等存在,而mongodb分片的作用,相当于负载均衡,纵然mongodb可以实现主从技术,但是主从技术并不能减缓访问量大而造成的数据库压力,因此需要用到分片。
分片的原理就是由一台路由或者两台路由代理,路由里拥有两个或以上的复制集群,其中复制集群单台又能支持一次性写入最多64MB的数据,当数据过多时,会自动切换另外一个复制集群继续写入,如此反复交替。而在用户读取的时候,由于是分片式读取,不会像单一的数据库读取起来耗时严重,因此,在减缓服务器数据库压力的同时还提高了读写速度。
mongodb分片搭建步骤
准备材料
准备十台以上的虚拟机,可以做克隆,其中有六台用作复制群集,三台用作配置服务器,一台用作路由(最简单的环境)
现实中,三台配置服务器多是用不同节点的服务器配置完成的。
步骤
1)为了减少多台机器带动导致的电脑虚拟机压力,这边采用的是克隆模式进行的实验
2)安装好mongodb
vim /etc/yum.repos.d/mongodb-org.repo
[mongodb-org]
name=MongoDB Repository
baseurl=http://mirrors.aliyun.com/mongodb/yum/redhat/7Server/mongodb-org/3.4/x86_64/
gpgcheck=0
enabled=1
yum install -y mongodb-org
3)在/var/lib文件夹中创建10个以序号排列的文件夹
mkdir mongo{1…10}
4)复制mongo配置文件并且重命名以10个序列号排列
5)在配置文件的复制群集即前六台中做出以下配置:
并且在最后注释字的关键词中插入该段话
sharding:
clusterRole: shardsvr
replication:
oplogSizeMB: 2048
replSetName: xiaoyang
设定出来的六个复制群集端口号为: