mkdir -p /data/r0 /data/r1 /data/r2
./bin/mongod --port 27017 --dbpath /home/workspace/data/r0/ --smallfiles --replset rsa --fork --logpath /home/workspace/logs/mongo0.log
./bin/mongod --port 27018 --dbpath /home/workspace/data/r1/ --smallfiles --replset rsa --fork --logpath /home/workspace/logs/mongo1.log
./bin/mongod --port 27019 --dbpath /home/workspace/data/r2/ --smallfiles --replset rsa --fork --logpath /home/workspace/logs/mongo2.log
rsconf = ,,]
}rs.initiate(rsconf);
mongodb中你只能通過主節點將mongo服務新增到副本集中, 判斷當前執行的mongo服務是否為主節點可以使用命令db.ismaster() 。
mongodb的副本集與我們常見的主從有所不同,主從在主機宕機後所有服務將停止,而副本集在主機宕機後,副本會接管主節點成為主節點,不會出現宕機的情況。
複製集建立自動化指令碼:
vim start.sh
#!/bin/bash
ip=192.168.119.128
na=rs2
if [ $1 == 'reset' ]; then
pkill -9 mongo
rm -rf /home/m*
exit;
fiif [ $1 == 'repl' ]; then
mkdir -p /home/m17 /home/m18 /home/m19 /home/mlog
/usr/mongodb/bin/mongod --dbpath /home/m17 --logpath /home/mlog/m17.log --port 27017 --fork --smallfiles --replset $
/usr/mongodb/bin/mongod --dbpath /home/m18 --logpath /home/mlog/m18.log --port 27018 --fork --smallfiles --replset $
/usr/mongodb/bin/mongod --dbpath /home/m19 --logpath /home/mlog/m19.log --port 27019 --fork --smallfiles --replset $
/usr/mongodb/bin/mongo 執行自動化指令碼:
sh start.sh reset
sh start.sh repl
輸入命令: ./mongo 會自動連線到複製集中的主節點
1、if和[ ]之間要空格。
2、[ ]和' '之間要空格
3、' '和=之間要空格, 否則都會報錯
Windows下搭建mongodb複製集
mongodb版本為3.6.21 複製集是由副本組成的集群,需要至少兩個或以上的節點,其中有乙個是主節點,負責處理客戶端的請求,其它的為從節點,通過主從複製同步主節點的備份,主副節點上的資料是一致的,從節點定期從主節點獲取oplog,相當於mysql的binlog,記錄了所有修改資料庫操作。複製集可...
生產環境mongodb快速搭建複製集
mongodb快速搭建複製集 現在很多資料庫都支援實時安全備份,mongodb 也不例外。mongodb的複製集就是為安全備份而生。原理就是在主資料庫被操作改變的同時,對副本資料庫作同樣的操作,時刻保持和主副資料庫的一致性。同時順便衍生了乙個功能就是讀寫分離,可以寫在主資料庫,讀在副本資料庫,一定程...
MongoDB複製集和分片
複製集 複製提供了兩方面的好處 高效能 和 高可用性 奇數 應確保伺服器為奇數,這樣更容易選舉出主伺服器 複製策略 副本集數量 容錯 部署副本集 1.2.為複製集 中的每個伺服器配置 replset值。可以在檔案 mongodb.conf 中指定,也可以在命令列中指定。mongod port 270...