首先 在目錄下面新建三個文件夾 分別 conf data logs
新建conf配置文件
# mongodb 配置文件
port=28001 #端口
bind_ip=0.0.0.0 #默認是127.0.0.1
dbpath=/usr/apk/mongodb/mongodb-linux-x86_64-rhel70-4.2.5/data/28001 #數據庫存放
logpath=/usr/apk/mongodb/mongodb-linux-x86_64-rhel70-4.2.5/logs/28001.log #日志文件
fork=true #設置后台運行
#auth=true #開啟認證
logappend=true # 日志疊加
pidfilepath=/usr/apk/mongodb/mongodb-linux-x86_64-rhel70-4.2.5/data/28001/28001.pid # 進程id
oplogSize=1024 # 操作日志最大值 m單位
replSet=pigs # 自定義的名稱
分別復制2兩個 28002.conf 28003.conf
cp 28001.conf 28002.conf
編輯28002.conf 28003.conf 然后使用全局替換的方式 我這里都替換了
vi 28002.conf
/1,$s/28001/28002/g # 全局替換
然后現在data目錄下新建3個目錄 分別是 28001 28002 28003 記得要切換目錄
mkdir 28001 28002 28003
分別啟動他們
mongod --config 28001.conf
mongod --config 28002.conf
mongod --config 28003.conf
ps -aux|grep mongod # 查看進程
現在都已經啟動了,連接測試一下
mongo mongodb://localhost:28001
切換到 admin 庫中
use admin # 使用admin庫
#編輯 config 配置文件 ip地址不建議添寫 localhost 或者 127.0.0.1
config={
... _id:"pigs",
... members:[
... {_id:0,host:"192.168.136.128:28001"},{_id:1,host:"192.168.136.128:28002"},{_id:2,host:"192.168.136.128:28003"}]}
回車就會自動幫我們排序好
現在我們把28003設置為嫉妒者,當然你也可設置其他的
config.members[2] = {"_id":2,"host":"192.168.136.128:28003","arbiterOnly":true}
rs.initiate(config)
添加完成就可以建立連接了回車幾下,看到很陌生不要慌這說明你已經搭建成功了
查看一下狀態,你可以看到里面的狀態信息
rs.status()
存取值一下,發現是沒有問題的
db.pigs.insert({"name":"yang"})
db.pigs.find()
連接一下 28002 從節點
mongo mongodb://192.168.136.128:28002
不管你怎么做都是報的,這時候怎么辦呢
添加從節點為true就可以了
rs.slaveOk(true)
切換一下數據庫
use test
db
現在再查詢發現是可以了
總結,沒有什么難的,用心看代碼盡量減少代碼出錯的,如果有什么問題就評論留言吧,第一時間回復你