CentOS7安装mongoDB数据库

时间:2015-03-03 16:45来源:blog.csdn.net 作者:进击的木偶 举报 点击:8795次

mongoDB是目前发展比较好的NOSQL数据库之一,它对大数据和空间数据的存贮有着亮眼的表现!

通常在企业级应用中mongoDB都会部署在linux系统上对于小白来说想在linux上部署一套完整的mongoDB绝对不是什么easy的事,我也是在最近一段摸爬滚打的尝试中才成功的,写下这篇博客也是为了以后自己也可以查阅。

首先需要的就是部署所需要的环境了我使用的是VMware虚机,由于现在工作的地方比较资料比较富裕,给我提供了俩台价值5W的工作站电脑(绝对给力)。我在这俩台电脑上分别安装了4台centos的虚机并且配置好环境。



这是我用到的虚机的清单需要说明一下:

1-4
,5-8分别是位于俩台工作站上的4台虚机,每个虚机上面安装一个mongod,ip自己分配,其中在1,2和5上分别安装了config,config
是mongos用来管理mongod的具体原理这里就不说了,注意到5后面有个发布这个在本文就不介绍了是另一个功能就是nginx发布瓦片和wmts。
最后9和10是安装在第三台电脑上的应用服务器这里就是只除了那俩台工作站之外我自己使用的电脑,上面也安装了2台虚机。由于电脑配置好的原因我这里的虚
机内存都是2g的。为什么要用俩台电脑呢是因为这俩个可以一个是主一个是从互为复制集,相当于俩个分片。目前10还没用到,上面安装了一个mongos。
如果电脑多但是配置不高的话就需要准备多台电脑了。

下面就是开始安装mongod了:

第一步:下载mongodb

这里需要一个mongodb的安装文件 mongodb-linux-x86_64-2.6.7 http://pan.baidu.com/s/1mg642hU这里提供下载当然也可以去官网下载,

将这个安装包分别拷到10台虚机上。

第二部:解压安装包



第三步:创建数据目录和日志目录

说明:想要创建几个mongod 就需要创建几个数据db和日志.log。

将解压文件移动到“/usr/local/mongodb”文件夹中。

在mongodb文件夹中创建data目录和logs目录

命令: mkdir -p ./data/db;

mkdir logs;

第四步:启动服务

以后台方式启动mongodb服务

命令:

numactl –interleave=all /usr/local/mongodb/bin/mongod
–dbpath=/usr/local/mongodb/data/db
–logpath=/usr/local/mongodb/logs/mongodb.log –fork –port 27017 –replSet
rep1

第五步:设置开机启动

命令:

echo ”
numactl–interleave=all/usr/local/mongodb/bin/mongod–dbpath=/usr/local/mongodb/data/db
–logpath=/usr/local/mongodb/logs/mongodb.log –fork –port 27017 –replSet
rep1” >> /etc/rc.local

第六步:查看日志和服务

命令:tail -f /usr/local/mongodb/logs/mongodb.log;

命令:ps aux |grep mongodb;



这里显示服务已经启动了!

查看mongodb

复制集+sharding分片

第一步:配置复制集

配置第一个复制集,用其中第一组第一个mongod,启动mongo,初始化复制集rep1。

初始化第一个rep1(mongod:192.9.104.108:27017)

命令:

config={_id:’rep1’,members:[

{_id:0,host:’192.9.104.108:27017’},

{_id:1,host:’192.9.104.109:27017’},

{_id:2,host:’192.9.104.110:27017’},

{_id:3,host:’192.9.104.110:27018’}]

}

rs.initiate(config)

配置第二个复制集,用其中第二组第一个mongod,启动mongo,初始化复制集rep2。

初始化第二个rep2(mongod:192.9.104.111:27017)

config={_id:’rep2’,members:[

{_id:0,host:’192.9.104.111:27017’},

{_id:1,host:’192.9.104.112:27017’},

{_id:2,host:’192.9.104.113:27017’},

{_id:3,host:’192.9.104.113:27018’}]

}

rs.initiate(config)

第二步:配置多台config server

第三步:配置mongos

numactl –interleave=all /usr/local/mongodb/bin/mongos -configdb
192.9.104.108:28017,192.9.104.109:28017,192.9.104.111:28017 –port 30000
–chunkSize 5 –logpath /usr/local/mongodb/logs/mongos.log –fork

备注:(只连接一个config)

numactl –interleave=all /usr/local/mongodb/bin/mongos -configdb
192.9.104.108:28017 –port 34500 –chunkSize 5 –logpath
/usr/local/mongodb/logs/mongos.log –fork

启动mongos服务



连接mongos

第四步:配置shard cluster

连接mongos 的进程,并切换到admin数据库进行配置。

配置shard cluster

第五步:激活数据库及集合分片功能

新建数据库和集合,根据需求进行激活。

示例:test.test

激活数据库及集合分片

至此基于centos7的mongodb(mongod,mongos,config server)就部署完成了,虽然比较费劲但是完成后还是有点成就感的!

 

CentOS7安装mongoDB数据库的更多相关文章

  1. CentOS7安装redis数据库及php-redis扩展

    redis 首先把redis安装到服务器中 1.wget http://download.redis.io/redis-stable.tar.gz 下载redis源码 2. tar xvzf redi ...

  2. 全自动安装mongoDB数据库的shell脚本

    最近在研究mongoDB数据库,写了个全自动安装mongoDB数据库的shell脚本,仅供参考,欢迎拍砖,内容如下: #!/bin/bash # shell的执行选项: # -n 只读取shell脚本 ...

  3. centos7安装mongodb详解

    记录一下linux下安装mongodb数据库过程. 安装mongodb #下载linux版本的tar文件#  例如笔者下载的是:mongodb-linux-x86_64-rhel70-3.4.4.tg ...

  4. CentOS7 安装MongoDB 3.0服务器

    1,下载&安装 MongoDB 3.0 正式版本发布!这标志着 MongoDB 数据库进入了一个全新的发展阶段,提供强大.灵活而且易于管理的数据库管理系统.MongoDB宣称,3.0新版本不只 ...

  5. MongoDB 3.0(1):CentOS7 安装MongoDB 3.0服务

    目录(?)[-] 1下载安装 2MongoDB CRUD 1创建数据 2更新数据 3删除 4查询 5更多方法 3MongoDB可视化工具 4总结   本文原文连接: http://blog.csdn. ...

  6. 阿里云ecs Linux平台安装mongodb数据库

    MongoDB提供了linux平台上32位和64位的安装包,你可以在官网下载安装包. 下载地址:http://www.mongodb.org/downloads 下载完安装包,并解压 tgz(以下演示 ...

  7. CentOS7安装mysql数据库

    安装完Centos7,迫不急待的想安装mysql数据库,却没想到走了很多弯路,后来经过查资料,才知道了在Centos7中用MariaDB代替了mysql数据库. 准确来说,本文的标题有点误导的意思,本 ...

  8. CentOS7 安装MongoDB 3.0服务

    1,下载&安装 MongoDB 3.0 正式版本发布!这标志着 MongoDB 数据库进入了一个全新的发展阶段,提供强大.灵活而且易于管理的数据库管理系统.MongoDB宣称,3.0新版本不只 ...

  9. CentOS 6.5_X64下安装MongoDB数据库

    1.下载MongoDB 官网下载地址:https://www.mongodb.org/downloads 具体链接:https://fastdl.mongodb.org/linux/mongodb-l ...

随机推荐

  1. 实用的开源百度云分享爬虫项目yunshare - 安装篇

    今天开源了一个百度云网盘爬虫项目,地址是https://github.com/callmelanmao/yunshare. 百度云分享爬虫项目 github上有好几个这样的开源项目,但是都只提供了爬虫 ...

  2. 关于mvc5+EF里面的db.Entry(model).State = EntityState.Modified报错问题

    最近在使用mvc5+EF的的时候用到了这句话 db.Entry(model).State = EntityState.Modified 看上去很简单的修改数据,但是一直报错,说是key已经存在,不能修 ...

  3. Java:注解(元数据)

    初识Java注解 所谓的元数据是指用来描述数据的数据,可能刚听到元数据的时候你会有点陌生,其实任何一个使用过struts或者hibernate的开发人员都在不知不觉中使用元数据,更通俗一点来说元数据是 ...

  4. 【Python】 [基础] list和tuple

    list 类型,这不就是js里的数组吗,,最后一个元素索引是 -1list是一个可变的有序的表,#追加.append('admin')#插入.insert(1,'admin')#删除末尾元素.pop( ...

  5. there is issue about change event of checkbox in the ie8 oe ie7

    some people said the change event of checkbox can not trigger in the ie7 or ie8,that's not true. thi ...

  6. hibernate的Criteria条件查询

    项目中用到了criteria的查询方式,觉得挺好用的,下班后找了一下资料,一边测试,一边在博客上面记录下来 1.初解 快速浏览了资料,大致了解了以下的内容: 1. Hibernate 定义了Crite ...

  7. git的配置

    git的配置: Git 提供了一个叫做 git config 的工具,专门用来配置或读取相应的工作环境变量. 这些环境变量,决定了 Git 在各个环节的具体工作方式和行为.这些变量可以存放在以下三个不 ...

  8. 分析函数——keep(dense_rank first/last)

    来源于:http://blog.itpub.net/28929558/viewspace-1182183/ 销售表:SQL> select * from criss_sales where de ...

  9. ETL利器Kettle实战应用解析系列一【Kettle使用介绍】

    本系列文章主要索引如下: 一.ETL利器Kettle实战应用解析系列一[Kettle使用介绍] 二.ETL利器Kettle实战应用解析系列二 [应用场景和实战DEMO下载] 三.ETL利器Kettle ...

  10. HTTP 405 错误 – 方法不被允许 (Method not allowed)

    HTTP 协议定义一些方法,以指明为获取客户端(如您的浏览器或我们的 CheckUpDown 机器人)所指定的具体网址资源而需要在 Web 服务器上执行的动作.则这些方法如下: 介绍 OPTIONS( ...