mongodb複製集搭建(把專業知識生活化)

  對於一個正在成長的mysql DBA來說,在剛剛開始接觸mongodb時,對於複製集,分片的概念太模糊了。於是從網上查看了一些資料,和相關mongodb的書籍,有了個大概的輪廓的瞭解。我更喜歡把專業知識生活化,對於mongodb的複製集,我們的必須品就是data,log,key!對於key來說,從英語上來解釋就是鑰匙,複製集好比一個大家庭,裏面的所有家庭成員要想進入這個大家庭,都需要相同的一把鑰匙。所以,我們的keyfile文件內容是一樣的,感覺這樣就能很好地理解這些生僻的概念了。家庭大了,事情也多,所以還有很多問題需要解決呢。我們的故事纔剛剛開始~~~~

1、初始化環境     

  1. useradd mongo
  2. mkdir -p /opt/srv/mongodb/data
  3. mkdir -p /opt/srv/mongodb/log
  4. mkdir -p /opt/srv/mongodb/key
  5. chown mongo.mongo /opt/srv/*
  6. su - mongo
  7. mkdir -p /opt/srv/mongodb/data/a1
  8. mkdir -p /opt/srv/mongodb/data/a2
  9. mkdir -p /opt/srv/mongodb/data/a3

 2、 生成keyfile

  1. echo "sumongodb is the best blog" > /opt/srv/mongodb/key/b1
  2. echo "sumongodb is the best blog" > /opt/srv/mongodb/key/b2
  3. echo "sumongodb is the best blog" > /opt/srv/mongodb/key/b3
  4. chmod 600 /opt/srv/mongodb*

 3、啓動mongo

  1. mongod --replSet sumongodb --keyFile /opt/srv/mongodb/key/b1 --port 20011 --dbpath /opt/srv/mongodb/data/a1  --logpath /opt/srv/mongodb/log/a1.log --logappend --oplogSize 100 --rest --directoryperdb --maxConns 200 --fork
  2. mongod --replSet sumongodb --keyFile /opt/srv/mongodb/key/b2 --port 20012 --dbpath /opt/srv/mongodb/data/a2  --logpath /opt/srv/mongodb/log/a2.log --logappend --oplogSize 100 --rest --directoryperdb --maxConns 200 --fork
  3. mongod --replSet sumongodb --keyFile /opt/srv/mongodb/key/b3 --port 20013 --dbpath /opt/srv/mongodb/data/a3  --logpath /opt/srv/mongodb/log/a3.log --logappend --oplogSize 100 --rest --directoryperdb --maxConns 200 --fork

4、初始化

  1.   mongo --port 20011
  2. > config = {_id: 'sumongodb', members: [{_id: 0, host: '127.0.0.1:20011'},{_id: 1, host: '127.0.0.1:20012'},{_id: 2, host:'127.0.0.1:20013'}]}
  3. > rs.initiate(config)
  4. > rs.status()
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章