CentOS7安裝MongoDB資料庫
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)就部署完成了,雖然比較費勁但是完成後還是有點成就感的!
更多MongoDB相關教程見以下內容:
CentOS 編譯安裝 MongoDB與mongoDB的php擴充
CentOS 6 使用 yum 安裝MongoDB及伺服器端配置
Ubuntu 13.04下安裝MongoDB2.4.3
MongoDB入門必讀(概念與實戰並重)
Ubunu 14.04下MongoDB的安裝指南
《MongoDB 權威指南》(MongoDB: The Definitive Guide)英文文字版[PDF]
Nagios監控MongoDB分區叢集服務實戰
基於CentOS 6.5作業系統搭建MongoDB服務
MongoDB 的詳細介紹:請點這裡
MongoDB 的:請點這裡
本文永久更新連結地址: