MongoDB複製集搭建

簡單說下複製集

  1. MongoDB的複製集是由傳統的master/slave結構演變而來的,是一組擁有相同數據集的MongoDB實例所組成的集羣,所說的複製其實就是將數據同步在多臺服務器的過程。git

  2. 複製集提供了數據的冗餘備份,並在多個服務器上存儲數據的副本,提升了數據的可用性,保證了數據的安全。github

  3. 複製集至少須要兩個節點:主節點和從節點。主節點負責處理客戶端的請求,並記錄在其上的全部寫操做的oplog,而從節點按期輪詢主節點來獲取這oplog,並在本身的數據副本執行這些操做。mongodb

Ubuntu-14.04搭建複製集

#準備
sudo cp mongo-2.6.zip /usr/local
sudo unzip mongo-2.6.zip
sudo mv mongo-2.6 mongo26
cd mongo26
sudo apt-get install scons
sudo scons all
cd /alidata

#配置文件
sudo mkdir -p mongodb/conf
cd /alidata/mongodb/conf
sudo vim 28001.conf
插入以下內容:
bind_ip=10.0.13.13
port=28001
logpath=/alidata/mongodb/log/28001.log
logappend=true
dbpath=/alidata/mongodb/data/28001
pidfilepath=/alidata/mongodb/data/28001/28001.pid
replSet=teddy
oplogSize=40960
:wq
sudo cp 28001.conf 28002.conf
sudo sed -i 's/28001/28002/g' 28002.conf
sudo cp 28001.conf 28003.conf
sudo sed -i 's/28001/28003/g' 28003.conf

#數據目錄
sudo mkdir -p mongodb/data
sudo mkdir -p mongodb/data/28001
sudo mkdir -p mongodb/data/28002
sudo mkdir -p mongodb/data/28003

#日誌目錄
sudo mkdir -p mongodb/log

#啓動
sudo /usr/local/mongo26/mongod --config /alidata/mongodb/conf/28001.conf
sudo /usr/local/mongo26/mongod --config /alidata/mongodb/conf/28002.conf
sudo /usr/local/mongo26/mongod --config /alidata/mongodb/conf/28003.conf

#檢查
ps -ef |grep 'mongod'
netstat -tlnp

#鏈接並配置
/usr/local/mongo26/mongo 10.0.13.13:28001
rs.initiate( {"_id":"teddy","members":[{"_id":1,"host":"10.0.13.13:28001"},{"_id":2,"host":"10.0.13.13:28002"},{"_id":3,"host":"10.0.13.13:28003"}]})
#能夠指定某個爲選舉節點
rs.initiate( {"_id":"teddy","members":[{"_id":1,"host":"10.0.13.13:28001"},{"_id":2,"host":"10.0.13.13:28002"},{"_id":3,"host":"10.0.13.13:28003","arbiterOnly":true}]})

#退出重連
/usr/local/mongo26/mongo 10.0.13.13:28001
相關文章
相關標籤/搜索