日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

sharing分片集合环境搭建【MongDB系列之七】

發布時間:2023/12/20 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 sharing分片集合环境搭建【MongDB系列之七】 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

?

?注意:shop是前幾講搭建起來的副本集(這節不會詳細說明怎么搭建)

?

D:?副本集?shop1??數據路徑:?D:\MongDB_E\data\bin???端口:192.168.0.100:9100

E:?副本集?shop1??數據路徑:?D:\MongDB_F\data\bin???端口:192.168.0.100:9200

?

CNF:??配置服務器:D:\MongDB_CNF\data\bin???端口:192.168.0.100:9400

CNF:??配置服務器:E:\MongDB_CNF\data\bin???端口:192.168.0.100:9500

CNF:??配置服務器:E:\MongDB_CNF\data\bin???端口:192.168.0.100:9600

?

?

ROT:?副本集shop1?路由服務器,數據路徑:?D:\MongDB_ROT\data\bin

端口:192.168.0.100:9300

?

?

ROT:?在192.168.0.101指定路由服務器,數據路徑:?D:\MongDB_ROT\data\bin???端口:??9300

?

?

?

說明:

?????路由服務器會連接到由前幾章節搭建起來的副本集合?shop,以及由D,E服務器新搭建的新副本集shop1(沒有給分配仲裁服務器)

??此次訪問將通過客戶端直接訪問路由器,由路由器決定訪問哪個副本集的primary。

?

1.?搭建副本集shop1

?

1)?啟動副本集shop1端口9100

mongod?--dbpath?D:\MongDB_E\data\db?--port?9100??--replSet??shop1/192.168.0.100:9100?--shardsvr??--bind_ip?192.168.0.100

?

2)?啟動副本集shop1端口9200

mongod?--dbpath?D:\MongDB_F\data\db?--port?9200??--replSet??shop1/192.168.0.100:9100?--shardsvr??--bind_ip?192.168.0.100

?

啟動的時候一定要指定一個局域網IP地址,否則最后會報錯,無法連接等的錯誤信息。啟動副本集shop的時候也需要全部指定IP地址,在本例中shop集合對應的IP地址是,192.168.0.101

?

3)?初始化副本集shop1

登錄9100端口,使用admin用戶

執行命令初始化:

db.runCommand({"replSetInitiate":{

"_id":"shop1","members":[

{"_id":1,"host":"192.168.0.100:9100","priority":1},

{"_id":2,"host":"192.168.0.100:9200"}

]}})

?

Priority:1?指定默認的primary服務器??,如果無法執行確認?數據庫路徑,命令編碼是否正常。?

4)?測試shop1成功初始化

5)?啟動shop1?集合中的配置服務器

?

???????mongod?--configsvr?--port?9400?--dbpath?D:\MongDB_CNF\data\db?

???????mongod?--configsvr?--port?9500?--dbpath??E:\MongDB_CNF\data\db

???????mongod?--configsvr?--port?9600?--dbpath??E:\MongDB_CNF2\data\db

?

???注意在192.168.0.100?即,shop1?集合所在的機器啟動了三個配置服務器?9400?9500和?9600。(因為在啟動路由的時候如果寫兩個配置庫,提示:要么1個配置服務器,要么3個配置服務器會報錯。)

?

6)?啟動shop1?集合中的路由服務器

mongos?--configdb?192.168.0.100:9400,192.168.0.100:9500,192.168.0.100:9600??--port??9300?--chunkSize?1

?configdb?參數后面跟的是配置服務器,并且數量為1或3

7)?rs.isMaster()?查看當前連接服務器的狀態。

?

?

2.?Shop集合中配置路由服務器

?

?

?

ROT:?路由服務器,數據路徑:?D:\MongDB_ROT\data\bin???端口:192.168.0.101:9300

?

?

mongos?--configdb?192.168.0.100:9400,192.168.0.100:9500,192.168.0.100:9600??--port??9300?--chunkSize?1

?

?

mongos?啟動參數中,chunkSize?這一項是用來指定chunk?的大小的,單位是MB,默認大小

200MB,為了方便測試Sharding?效果,我們把chunkSize?指定為?1MB

?

?

至此,在192.168.0.100?上配置的server,和route已經完成,在192.168.0.101?即:127.00.1上配置的server和route也完成。下面將給route?加入副本集合。

3.?配置Sharding

?

1)?登錄shop1路由服務器添加副本集?sharing登錄路由服務器?使用admin?將?兩個副本集中的副本集數據庫服務器,加入到當前share中:

db.runCommand({addshard:"shop1/192.168.0.100:9100,192.168.0.100:9200"});

db.runCommand({addshard:"shop/192.168.0.101:7400,192.168.0.101:7500,192.168.0.101:7600"})

?

?

?

?

2)?激活數據庫及集合的分片

?

3)?測試數據

for(var?i=1;i<=2000;i++)?db.users.insert({id:i,addr_1:"Beijing",addr_2:"Shanghai"});

登陸路由服務器?9300?切換到test?數據庫寫入數據。

?

4)?查看分片的狀態

???db.users.stats();

可以看到shard2?和?shard1?里面都有對應的數據。(上圖是新建的環境下測試的結果)

5)?

?

?

4.?Config服務器關閉后下次無法啟動提示repair?使用如下命令執行恢復操作

?

?執行修復后啟動正常。

?

?

轉載于:https://blog.51cto.com/mvc2008mvc/1228826

總結

以上是生活随笔為你收集整理的sharing分片集合环境搭建【MongDB系列之七】的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。