1. 把mongod添加到windows開機啓動中
> mongod --dbpath d:/data/mongodb/ --logpath d:/data/mongodb/mylog/mongodb.log --replSet repset --serviceName "MongoDB" --install
> net start MongoDB
詳細說明
---------------------------------------------------------------------------
--dbpath d:/data/mongodb/ //指定數據庫將來存放的路徑
--logpath d:/data/mongodb/log/mongo.log //指定mongod運行時日誌文件
--replSet repset //給副本集取名,這裏取名repset
--serviceName "MongoDB" //設置windows開機啓動後顯示的服務名
--install //把"MongoDB"服務添加到開機啓動項中
2. 初始化副本集並設置關聯
> mongo
> use admin
> config = { _id:"repset", members:[
... {_id:0,host:"192.168.1.136:27017"},
... {_id:1,host:"192.168.1.137:27017"},
... {_id:2,host:"192.168.1.138:27017"}]
... }
> rs.initiate(config);
> rs.status();
3. 測試副本集是否正常工作
> mongo 127.0.0.1
> use test;
> db.testdb.insert({"test1":"testval1"})
> mongo 192.168.1.136:27017
> db.getMongo().setSlaveOk()
> use test
> show tables 或者 db.testdb.find();
說明:
這一步可以省略,直接用mongo圖形化可視化客戶端工具進行查看數據。推薦客戶端
Robomongo 0.9.0-RC10
4、使用mongodb配置文件(推薦Linux下)
> mongod -f conf/mongod.conf
#mongod.conf
bind_ip=10.101.72.49 //設置了之後,本地127.0.0.1就不能訪問了
port=27017
dbpath=/opt/mongo-3.2.9/data
logpath=/opt/mongo-3.2.9/log/mongodb.log
fork=true
nojournal=true
replSet=repset
5、設置賬戶密碼
- 必須先設立管理員賬戶密碼,官網有比較詳細的資料
- 添加賬號密碼的時候,root賬號可以打開集合,admin不可以打開集合
> use admin
> db.createUser({user:"admin",pwd:"password",roles:["root"]})
> use proxy_manager
> db.createUser(
{
user: "wuxian",
pwd: "password",
roles: [ { role: "readWrite", db: "proxy_manager" } ]
}
)
附錄1:讓當前運行的MongoDB服務停止
> sc delete MongoDB
附錄2:添加節點和刪除節點
在副本集的master下,一條一條的把slave從副本集中刪除。
> rs.add("192.168.1.136:27017") //添加
> rs.remove("192.168.1.136:27017") //刪除
> config = { _id:"repset", members:[{_id:0,host:"192.168.1.136:27017"}]}
附錄3:以管理員權限打開終端(win)
在windows下,建議以管理員的方式啓動終端。否則,執行mongo命令可能會失敗。
參考資料
mongodb用戶權限修改,刪除以及robomongo顯示問題