MongoDB安裝、副本集和分片的搭建

一、mongoDB安裝

1.安裝包下載

http://dl.mongodb.org/dl/win32/x86_64
:官方下載選擇不了包,上述這個網址全面一點,選擇下載了.msi
在這裏插入圖片描述

2.安裝到自己的想要存放的路徑

:忘記安裝好的目錄下面是不是有data和log了,不過沒有關係之後再創建就好了,現在看下一步操作。

3.啓動服務(以下二選一)

1.命令行下運行mongoDB服務

d:\mongodb\bin\mongod --dbpath d:\mongodb\data --logpath d:\mongodb\log\mongod.log

:本人安裝在了d盤,–dbpath是指存放數據庫的位置,–logpath是指存放日誌文件的位置,都是可以自己指定的,沒有文件可以創建。之後我們例外再開一個cmd在d:\mongodb\bin下輸入mongo即可,或者輸入完整的路徑也是可以的。

2.配置mongoDB服務(在服務下可以看到)

1.創建配置文件或者修改配置文件

:配置文件的存放隨意,因爲會在命令行下輸入完整的路徑。也可以用在bin目錄裏面的mongod.cfg。

storage:
  dbPath: D:\mongoDB\data
  journal:
    enabled: true
 systemLog:
  destination: file
  logAppend: true
  path:  D:\mongoDB\log\mongod.log
2.安裝mongodb服務
d:\mongodb\bin\mongod.exe --config "d:\mongodb\bin\mongod.cfg" --install

在這之後服務裏面就會出現mongodb的服務了。當然也可以添加–serviceName --serviceDisplayName

3.啓動mongodb服務
net start MongoDB

二.副本集+分片的搭建

1.知識點介紹

複製是爲了冗餘,副本集關鍵在與創建服務的時候要定義–replSet以及端口 --port,一個副本集的名稱都是相同的。

mongod --port "PORT" --dbpath "YOUR_DB_DATA_PATH" --replSet "REPLICA_SET_INSTANCE_NAME"或者更改配置文件,添加副本集的名稱replSet=repl再啓動mongod

隨後在任意一個服務器中登入shell,進行初始化配置

config={
_id : “副本集名稱”,
… members : [
… {_id : 0, host : “127.0.0.1:27017” },
… {_id : 1, host : “127.0.0.1:27018” },
… {_id : 2, host : “127.0.0.1:27019” }
… ]
…}
rs.initate(config)

:在一臺電腦上搭建副本集時,本人使用的是同一個IP地址不同的端口號。查看了別人的文章,感覺在實際運用中是不同的IP地址使用同一個端口號搭建副本集。一臺電腦上操作的話需要用到虛擬機。

分片是爲了解決處理數據能力不足的問題,讓多臺機器一起工作。
:本人在一臺機器上需要準備三個分片,三個config server,一個route server。實際運用中會存在多臺機器,每一臺機器上是兩個以上分片,一個config server,一個route service。而且現在版本要求不能是單獨的一個分片服務器,需要是副本集(也就是上面的操作,不同的IP地址同一個端口號連接在一起)。

分片啓動就是和普通啓動是一樣的,可以添加一個–shardsvr。config啓動也是和普通啓動一樣,可以添加一個–configsvr。(同上,不管是在命令行裏面添加還是在配置文件中添加都可以)

分片中最重要的是路由服務器。命令如下:

mongos --port 40000 --configdb localhost:27100,ocalhost:27101,localhost:27102 --logpath=D:/mongoDB/shard/log/route.log
mongo --port 40000
執行以下命令,添加分片到集羣
>db.addShard("集羣的地址+端口號")
>db.runCommand({ enablesharding:"test" }) #設置分片存儲的數據庫
>db.runCommand({ shardcollection: "test.log", key: { id:1,time:1}})(有文章看到id:hashed分片更均勻)。

之後就是輸入數據測試了。

參考文章地址:

https://www.runoob.com/mongodb/mongodb-sharding.html
https://www.cnblogs.com/ityouknow/p/7344005.html(強烈推薦)
https://www.jianshu.com/p/d5e693f99760(推薦)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章