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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

MongoDB 分片集群搭建

發布時間:2023/12/16 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MongoDB 分片集群搭建 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

說明

配置說明

gitee

3臺機器

端口

安裝

下載

解壓文件

創建文件夾

目錄結構

#按順序啟動

shard集群配置

#配置復制集 shard1,注意ip和端口

#初始化副本集配置

#配置復制集 shard2

#配置復制集 shard3

config集群配置

#啟動各個節點:

#創建config集群?

mongos節點配置

#啟動mongos

#登錄到mongos

#添加 分片集群

#查看分片狀態?

#查看集群狀態

使用

#創建分片,啟動

開機啟動腳本


說明

本文參考了?

https://www.cnblogs.com/clsn/p/8214345.html#auto_id_42

http://www.lanceyan.com/tech/arch/mongodb_shard1.html

https://blog.csdn.net/aafeiyang/article/details/82109662

https://www.cnblogs.com/vansky/p/9640268.html

配置說明

gitee

配置文件在gitee上

https://gitee.com/DDDD/mongodb_settings

3臺機器

jiba01 10.10.10.100??

jiba02?10.10.10.101

jiba03?10.10.10.102

端口

  • mongos端口? 21000
  • config集群端口? 22000? ? 集群名字?(replSetName)configReplSet
  • 3個分片集群端口?
  • shard1:23001 集群名字(replSetName)shard1
  • shard2:23002?集群名字(replSetName)shard2
  • shard3:23003?集群名字(replSetName)shard3

安裝

下載

#下載 [root@jiba01 files]# wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.10.tgz --2019-07-09 04:38:48-- https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.10.tgz Resolving fastdl.mongodb.org (fastdl.mongodb.org)... 13.249.236.15, 13.249.236.35, 13.249.236.77, ... Connecting to fastdl.mongodb.org (fastdl.mongodb.org)|13.249.236.15|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 84996443 (81M) [application/x-gzip] Saving to: ‘mongodb-linux-x86_64-4.0.10.tgz’100%[===========================================================================>] 84,996,443 2.95MB/s in 22s2019-07-09 04:39:13 (3.75 MB/s) - ‘mongodb-linux-x86_64-4.0.10.tgz’ saved [84996443/84996443]

?

解壓文件

[root@jiba01 usr]# tar -zxvf mongodb-linux-x86_64-4.0.10.tgz mongodb-linux-x86_64-4.0.10/THIRD-PARTY-NOTICES.gotools mongodb-linux-x86_64-4.0.10/README mongodb-linux-x86_64-4.0.10/THIRD-PARTY-NOTICES mongodb-linux-x86_64-4.0.10/MPL-2 mongodb-linux-x86_64-4.0.10/LICENSE-Community.txt mongodb-linux-x86_64-4.0.10/bin/mongodump mongodb-linux-x86_64-4.0.10/bin/mongorestore mongodb-linux-x86_64-4.0.10/bin/mongoexport mongodb-linux-x86_64-4.0.10/bin/mongoimport mongodb-linux-x86_64-4.0.10/bin/mongostat mongodb-linux-x86_64-4.0.10/bin/mongotop mongodb-linux-x86_64-4.0.10/bin/bsondump mongodb-linux-x86_64-4.0.10/bin/mongofiles mongodb-linux-x86_64-4.0.10/bin/mongoreplay mongodb-linux-x86_64-4.0.10/bin/mongod mongodb-linux-x86_64-4.0.10/bin/mongos mongodb-linux-x86_64-4.0.10/bin/mongo mongodb-linux-x86_64-4.0.10/bin/install_compass

?

創建文件夾
?

#創建文件夾 [root@jiba01 mongodb]# mkdir -p /usr/mongodb/conf [root@jiba01 mongodb]# mkdir -p /usr/mongodb/mongos/log [root@jiba01 mongodb]# mkdir -p /usr/mongodb/config/data [root@jiba01 mongodb]# mkdir -p /usr/mongodb/config/log [root@jiba01 mongodb]# mkdir -p /usr/mongodb/shard1/data [root@jiba01 mongodb]# mkdir -p /usr/mongodb/shard1/log [root@jiba01 mongodb]# mkdir -p /usr/mongodb/shard2/data [root@jiba01 mongodb]# mkdir -p /usr/mongodb/shard2/log [root@jiba01 mongodb]# mkdir -p /usr/mongodb/shard3/data [root@jiba01 mongodb]# mkdir -p /usr/mongodb/shard3/log

目錄結構

?

#按順序啟動

#按順序啟動 mongod -f /usr/mongodb/conf/shard1.conf & mongod -f /usr/mongodb/conf/shard2.conf & mongod -f /usr/mongodb/conf/shard3.conf &

#啟動的結果

[root@jiba01 conf]# about to fork child process, waiting until server is ready for connections. forked process: 1466 child process started successfully, parent exiting

?

shard集群配置

#連接集群 創建shard1,此處可以隨意登錄3個機器中的一個,但是需要保證port是shard1的port,此處用的是23001(shard1-23001 shard2-23002 shard3-23003)

mongo --host 10.10.10.100 --port 23001 admin

#配置復制集 shard1,注意ip和端口
?

config = {_id: 'shard1', members: [{_id: 0, host: '10.10.10.100:23001'},{_id: 1, host: '10.10.10.101:23001'},{_id: 2, host: '10.10.10.102:23001',"arbiterOnly":true}]} ?

#返回信息

{"_id" : "shard1","members" : [{"_id" : 0,"host" : "10.10.10.100:23001"},{"_id" : 1,"host" : "10.10.10.101:23001"},{"_id" : 2,"host" : "10.10.10.102:23001","arbiterOnly" : true}] }

#初始化副本集配置

#返回信息 "ok" : 1 是成功,其他的需要看報錯進行處理

#返回信息 "ok" : 1 是成功,其他的需要看報錯進行處理 {"ok" : 1,"operationTime" : Timestamp(1562623465, 1),"$clusterTime" : {"clusterTime" : Timestamp(1562623465, 1),"signature" : {"hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),"keyId" : NumberLong(0)}} } shard1:SECONDARY>

#配置復制集 shard2


#退出重新登錄

mongo --host 10.10.10.100 --port 23002 admin config = {_id: 'shard2', members: [{_id: 0, host: '10.10.10.100:23002'},{_id: 1, host: '10.10.10.101:23002'},{_id: 2, host: '10.10.10.102:23002',"arbiterOnly":true}]} ? rs.initiate(config); #返回結果一樣,不再展示

#配置復制集 shard3


#退出重新登錄

mongo --host 10.10.10.100 --port 23003 admin config = {_id: 'shard3', members: [{_id: 0, host: '10.10.10.100:23003'},{_id: 1, host: '10.10.10.101:23003'},{_id: 2, host: '10.10.10.102:23003',"arbiterOnly":true}]} rs.initiate(config);

#shard集群全部配置完畢

config集群配置


#啟動各個節點

3個機器 ###每個機器啟動一個###

mongod -f /usr/mongodb/conf/config.conf

#然后登錄其中一個節點 創建config集群,注意端口號?

mongo --host 10.10.10.100 --port 22000 admin

#創建config集群?

注意 集群的名字 _id需要和配置文件中相同 ? configReplSet

config = {_id: 'configReplSet', members: [{_id: 0, host: '10.10.10.100:22000'},{_id: 1, host: '10.10.10.101:22000'},{_id: 2, host: '10.10.10.102:22000'}]} rs.initiate(config);

#config創建完畢

mongos節點配置

#啟動mongos

在每個機器上 都啟動mongos 此處是mongos命令

mongos -f /usr/mongodb/conf/mongos.conf

#登錄到mongos

mongo --host 10.10.10.100 --port 21000 admin

#添加 分片集群

db.runCommand( { addshard : "shard1/10.10.10.100:23001,10.10.10.101:23001,10.10.10.102:23001",name:"shard1"} ); db.runCommand( { addshard : "shard2/10.10.10.100:23002,10.10.10.101:23002,10.10.10.102:23002",name:"shard2"} ); db.runCommand( { addshard : "shard3/10.10.10.100:23003,10.10.10.101:23003,10.10.10.102:23003",name:"shard3"} );

#查看分片狀態?


#10.10.10.102上的全是仲裁節點,所以不會顯示

db.runCommand( { listshards : 1 } ) #返回結果 mongos> db.runCommand( { listshards : 1 } ) {"shards" : [{"_id" : "shard1","host" : "shard1/10.10.10.100:23001,10.10.10.101:23001","state" : 1},{"_id" : "shard2","host" : "shard2/10.10.10.100:23002,10.10.10.101:23002","state" : 1},{"_id" : "shard3","host" : "shard3/10.10.10.100:23003,10.10.10.101:23003","state" : 1}],"ok" : 1,"operationTime" : Timestamp(1562628088, 1),"$clusterTime" : {"clusterTime" : Timestamp(1562628088, 1),"signature" : {"hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),"keyId" : NumberLong(0)}} }

#查看集群狀態

#返回結果 --- Sharding Status ---sharding version: {"_id" : 1,"minCompatibleVersion" : 5,"currentVersion" : 6,"clusterId" : ObjectId("5d23ca90f263273c0ac89699")}shards:{ "_id" : "shard1", "host" : "shard1/10.10.10.100:23001,10.10.10.101:23001", "state" : 1 }{ "_id" : "shard2", "host" : "shard2/10.10.10.100:23002,10.10.10.101:23002", "state" : 1 }{ "_id" : "shard3", "host" : "shard3/10.10.10.100:23003,10.10.10.101:23003", "state" : 1 }active mongoses:"4.0.10" : 3autosplit:Currently enabled: yesbalancer:Currently enabled: yesCurrently running: noFailed balancer rounds in last 5 attempts: 0Migration Results for the last 24 hours:No recent migrationsdatabases:{ "_id" : "config", "primary" : "config", "partitioned" : true }config.system.sessionsshard key: { "_id" : 1 }unique: falsebalancing: truechunks:shard1 1{ "_id" : { "$minKey" : 1 } } -->> { "_id" : { "$maxKey" : 1 } } on : shard1 Timestamp(1, 0)

######################搭建完畢############################

使用


#創建分片,啟動


#登錄任意一個mongos節點

mongo --host 10.10.10.100 --port 21000

#newTable是新的數據庫名字
?

#newTable是新的數據庫名字 mongos> db.runCommand({enablesharding:'newTable'}); #返回信息 {"ok" : 1,"operationTime" : Timestamp(1562628535, 5),"$clusterTime" : {"clusterTime" : Timestamp(1562628535, 5),"signature" : {"hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),"keyId" : NumberLong(0)}} }

#指定數據庫里需要分片的集合和片鍵,用admin登錄

mongo --host 10.10.10.100 --port 21000 admin

#newTable的table1表需要分片 根據 id 自動分片到 shard1 shard2 shard3 上面去
#要這樣設置是因為不是所有mongodb 的數據庫和表 都需要分片

db.runCommand( { shardcollection : "newTable.table1",key : {id: 1} } )


#以后登錄可以直接登錄 mongos 而不用登錄各個分片的節點

開機啟動腳本

mongod -f /usr/mongodb/conf/shard1.conf & mongod -f /usr/mongodb/conf/shard2.conf & mongod -f /usr/mongodb/conf/shard3.conf & mongod -f /usr/mongodb/conf/config.conf & mongos -f /usr/mongodb/conf/mongos.conf &

#登錄mongos命令 21000是mongo的端口

mongo --host 10.10.10.100 --port 21000

#然后選擇不同的數據庫

use newTable

完畢

文件路徑如圖

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

總結

以上是生活随笔為你收集整理的MongoDB 分片集群搭建的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 麻豆蜜桃在线观看 | 在线观看一二三区 | 国产成人 综合 亚洲 | 双性皇帝高h喷汁呻吟 | 午夜一区二区三区在线 | 欧美天天性影院 | 亚洲成av人片在线观看无码 | 久久国产乱子伦免费精品 | 日本羞羞网站 | 91看片淫黄大片 | 久爱视频在线观看 | 国产又粗又深又猛又爽又在线观看 | 国产视频三级 | 人人妻人人澡人人爽久久av | 国产乱国产乱老熟300部视频 | 寂寞少妇让水电工爽hd | 古装三级吃奶做爰 | 免费涩涩视频 | 日日插日日操 | 原神女裸体看个够无遮挡 | 亚洲91网 | 岛国av网址 | 国产女人水真多18毛片18精品 | 精品九九视频 | 销魂奶水汁系列小说 | 国内精久久久久久久久久人 | 成人免费在线播放 | 情欲少妇人妻100篇 黄色一级片欧美 | 国产一区二区免费在线 | 91在线一区 | 顶臀精品视频www | 高h视频在线观看 | 在线视频 日韩 | 五月天激情四射 | 91视频中文字幕 | 丁香花完整视频在线观看 | 久久久精品91 | 伊人五月综合 | a免费毛片| 东京热一区二区三区四区 | 国产日韩欧美一区二区东京热 | 亚洲v欧美v另类v综合v日韩v | 91香蕉国产| 亚洲综合社区 | 男生和女生一起差差差很痛的视频 | xxxx日本少妇 | 成人免费无码大片a毛片抽搐色欲 | 国产精品国产三级国产aⅴ下载 | 小辣椒导航 | 日本99热| 国产乱子伦一区二区 | 国产aa大片 | 猫咪av网 | 中国少妇初尝黑人巨大 | 一本色道久久88综合无码 | 韩国黄色大片 | 凸凹人妻人人澡人人添 | 色综合自拍| 国产精品成人3p一区二区三区 | av有声小说一区二区三区 | 国产凹凸一区二二区 | 色婷婷av一区二区三区四区 | 亚洲乱码精品久久久久 | 久久99精品久久久久久噜噜 | 欧美特级黄色大片 | 国产巨乳在线观看 | 亚洲乱码一区二区 | 丰满孕妇性春猛交xx大陆 | 国产欧美日韩精品在线观看 | 色八戒av | 欧美色图1 | 日本熟妇毛茸茸丰满 | 波多野结衣亚洲 | 欧美日韩免费一区二区三区 | 国产中文一区 | 一级二级三级黄色片 | 无码人妻丰满熟妇精品区 | 99视频免费看 | 婷婷精品一区二区三区 | av自拍偷拍| 中文字幕欧美在线观看 | 久久蜜桃av一区二区天堂 | 99操| 国产精品啊啊啊 | 这里只有精品66 | 精品国产aⅴ一区二区三区四川人 | 男人天堂tv | 亚洲精品伊人 | 人人精品久久 | 六月丁香av| julia一区二区三区中文字幕 | jizz高潮| 花房姑娘免费观看全集 | 久久福利视频网 | 草草影院一区二区三区 | 国产欧美一区二区三区国产幕精品 | 亚洲a黄| 国产三级自拍视频 | 无码人妻一区二区三区av |