每日一句
Medalist don't grow on trees, you have to nurture them with love, with hard work, with dedication.
金牌選手不會從天而降,你必須用熱愛、刻苦和投入來澆灌他們,
概述
分片(sharding)是一種垮多臺機器分布資料的方法,MongoDB使用分片來支持具有非常大的資料集和高吞吐量操作的部署,
分片(sharding)是指將資料拆分,將其分散存在不同的機器上的程序,有時也用磁區(partitioning)來表示這個概念,將資料分散到不同的機器上,不需要功能強大的大型計算機就可以儲存更多的資料,處理更多的負載,
具有大型資料集或高吞吐量應用程式的資料庫系統可以會挑戰單個服務器的容量,例如,高查詢率會耗盡服務器的CPU容量,作業集大小大于系統的RAM會強調磁盤驅動器的I / O容量,
有兩種解決系統增長的方法:垂直擴展和水平擴展,
- 垂直擴展意味著增加單個服務器的容量,例如使用更強大的CPU,添加更多RAM或增加存盤空間量,可用技術的局限性可能會限制單個機器對于給定作業負載而言足夠強大,此外,基于云的提供商基于可用的硬體配置具有硬性上限,結果,垂直縮放有實際的最大值,
- 水平擴展意味著劃分系統資料集并加載多個服務器,添加其他服務器以根據需要增加容量,雖然單個機器的總體速度或容量可能不高,但每臺機器處理整個作業負載的子集,可能提供比單個高速大容量服務器更高的效率,擴展部署容量只需要根據需要添加額外的服務器,這可能比單個機器的高端硬體的總體成本更低,MongoDB支持通過分片進行水平擴展,
組件
MongoDB分片群集包含以下組件:
- 分片(存盤):每個分片包含分片資料的子集,每個分片都可以部署為副本集,
- Mongos(路由):mongos充當查詢路由器,在客戶端應用程式和分片集群之間提供介面,
- config servers:配置服務器存盤集群的元資料和配置設定,從MongoDB3.4開始,必須將配置服務器部署為副本集(CSRS)
下圖描述了分片集群中組件的互動:
MongoDB在集合級別對資料進行分片,將集合資料分布在集群中的分片上,
實體
兩個分片節點副本集(3+3)+一個配置節點副本集(3)+兩個路由節點(2),共11個服務節點,
分片節點副本集的創建
所有的的組態檔都直接放到 sharded_cluster 的相應的子目錄下面,默認組態檔名字:mongod.conf
第一套副本集
1 準備存放資料和日志的目錄
#-----------myshardrs01
mkdir -p /mongodb/sharded_cluster/myshardrs01_27018/log \ &
mkdir -p /mongodb/sharded_cluster/myshardrs01_27018/data/db \ &
mkdir -p /mongodb/sharded_cluster/myshardrs01_27118/log \ &
mkdir -p /mongodb/sharded_cluster/myshardrs01_27118/data/db \ &
mkdir -p /mongodb/sharded_cluster/myshardrs01_27218/log \ &
mkdir -p /mongodb/sharded_cluster/myshardrs01_27218/data/db
2 新建或修改組態檔:vim /mongodb/sharded_cluster/myshardrs01_27018/mongod.conf
systemLog:
#MongoDB發送所有日志輸出的目標指定為檔案
destination: file
#mongod或mongos應向其發送所有診斷日志記錄資訊的日志檔案的路徑
path: "/mongodb/sharded_cluster/myshardrs01_27018/log/mongod.log"
#當mongos或mongod實體重新啟動時,mongos或mongod會將新條目附加到現有日志檔案的末尾,
logAppend: true
storage:
#mongod實體存盤其資料的目錄,storage.dbPath設定僅適用于mongod,
dbPath: "/mongodb/sharded_cluster/myshardrs01_27018/data/db"
journal:
#啟用或禁用持久性日志以確保資料檔案保持有效和可恢復,
enabled: true
processManagement:
#啟用在后臺運行mongos或mongod行程的守護行程模式,
fork: true
#指定用于保存mongos或mongod行程的行程ID的檔案位置,其中mongos或mongod將寫入其PID
pidFilePath: "/mongodb/sharded_cluster/myshardrs01_27018/log/mongod.pid"
net:
#服務實體系結所有IP,有副作用,副本集初始化的時候,節點名字會自動設定為本地域名,而不是ip
#bindIpAll: true
#服務實體系結的IP
bindIp: localhost,192.168.0.2
#bindIp
#系結的埠
port: 27018
replication:
#副本集的名稱
replSetName: myshardrs01
sharding:
#分片角色
clusterRole: shardsvr
sharding.clusterRole:
| Value | Description |
| configsvr | Start this instance as a config server. The instance starts on port 27019 by default. |
| shardsvr | Start this instance as a shard. The instance starts on port 27018 by default. |
注意:
設定sharding.clusterRole需要mongod實體運行復制, 要將實體部署為副本集成員,請使用
replSetName設定并指定副本集的名稱,
3 新建或修改組態檔: vim /mongodb/sharded_cluster/myshardrs01_27118/mongod.conf
systemLog:
#MongoDB發送所有日志輸出的目標指定為檔案
destination: file
#mongod或mongos應向其發送所有診斷日志記錄資訊的日志檔案的路徑
path: "/mongodb/sharded_cluster/myshardrs01_27118/log/mongod.log"
#當mongos或mongod實體重新啟動時,mongos或mongod會將新條目附加到現有日志檔案的末尾,
logAppend: true
storage:
#mongod實體存盤其資料的目錄,storage.dbPath設定僅適用于mongod,
dbPath: "/mongodb/sharded_cluster/myshardrs01_27118/data/db"
journal:
#啟用或禁用持久性日志以確保資料檔案保持有效和可恢復,
enabled: true
processManagement:
#啟用在后臺運行mongos或mongod行程的守護行程模式,
fork: true
#指定用于保存mongos或mongod行程的行程ID的檔案位置,其中mongos或mongod將寫入其PID
pidFilePath: "/mongodb/sharded_cluster/myshardrs01_27118/log/mongod.pid"
net:
#服務實體系結所有IP,有副作用,副本集初始化的時候,節點名字會自動設定為本地域名,而不是ip
#bindIpAll: true
#服務實體系結的IP
bindIp: localhost,192.168.0.2
#bindIp
#系結的埠
port: 27118
replication:
#副本集的名稱
replSetName: myshardrs01
sharding:
#分片角色
clusterRole: shardsvr
4 新建或修改組態檔: vim /mongodb/sharded_cluster/myshardrs01_27218/mongod.conf
systemLog:
#MongoDB發送所有日志輸出的目標指定為檔案
destination: file
#mongod或mongos應向其發送所有診斷日志記錄資訊的日志檔案的路徑
path: "/mongodb/sharded_cluster/myshardrs01_27218/log/mongod.log"
#當mongos或mongod實體重新啟動時,mongos或mongod會將新條目附加到現有日志檔案的末尾,
logAppend: true
storage:
#mongod實體存盤其資料的目錄,storage.dbPath設定僅適用于mongod,
dbPath: "/mongodb/sharded_cluster/myshardrs01_27218/data/db"
journal:
#啟用或禁用持久性日志以確保資料檔案保持有效和可恢復,
enabled: true
processManagement:
#啟用在后臺運行mongos或mongod行程的守護行程模式,
fork: true
#指定用于保存mongos或mongod行程的行程ID的檔案位置,其中mongos或mongod將寫入其PID
pidFilePath: "/mongodb/sharded_cluster/myshardrs01_27218/log/mongod.pid"
net:
#服務實體系結所有IP,有副作用,副本集初始化的時候,節點名字會自動設定為本地域名,而不是ip
#bindIpAll: true
#服務實體系結的IP
bindIp: localhost,192.168.0.2
#bindIp
#系結的埠
port: 27218
replication:
#副本集的名稱
replSetName: myshardrs01
sharding:
#分片角色
clusterRole: shardsvr
5 啟動第一套副本集:一主一副本一仲裁
依次啟動三個mongod服務:
/usr/yltrcc/mongodb/bin/mongod -f /mongodb/sharded_cluster/myshardrs01_27018/mongod.conf
/usr/yltrcc/mongodb/bin/mongod -f /mongodb/sharded_cluster/myshardrs01_27118/mongod.conf
/usr/yltrcc/mongodb/bin/mongod -f /mongodb/sharded_cluster/myshardrs01_27218/mongod.conf
6 初始化副本集和創建主節點
使用客戶端命令連接任意一個節點,但這里盡量要連接主節點: /usr/yltrcc/mongodb/bin/mongo --host 180.76.159.126 --port 27018
執行命令:
# 初始化副本集
> rs.initiate()
# 查看副本集情況
myshardrs01:SECONDARY> rs.status()
# 主節點配置查看
myshardrs01:PRIMARY> rs.conf()
7 添加副本節點和仲裁節點
# 添加從節點
myshardrs01:PRIMARY> rs.add("180.76.159.126:27118")
# 添加仲裁節點
myshardrs01:PRIMARY> rs.addArb("180.76.159.126:27218")
# 查看配置情況
myshardrs01:PRIMARY> rs.conf()
第二套副本集
1 準備存放資料和日志的目錄
#-----------myshardrs01
mkdir -p /mongodb/sharded_cluster/myshardrs01_27318/log \ &
mkdir -p /mongodb/sharded_cluster/myshardrs01_27318/data/db \ &
mkdir -p /mongodb/sharded_cluster/myshardrs01_27418/log \ &
mkdir -p /mongodb/sharded_cluster/myshardrs01_27418/data/db \ &
mkdir -p /mongodb/sharded_cluster/myshardrs01_27518/log \ &
mkdir -p /mongodb/sharded_cluster/myshardrs01_27518/data/db
2 新建或修改組態檔:vim /mongodb/sharded_cluster/myshardrs01_27318/mongod.conf
systemLog:
#MongoDB發送所有日志輸出的目標指定為檔案
destination: file
#mongod或mongos應向其發送所有診斷日志記錄資訊的日志檔案的路徑
path: "/mongodb/sharded_cluster/myshardrs01_27318/log/mongod.log"
#當mongos或mongod實體重新啟動時,mongos或mongod會將新條目附加到現有日志檔案的末尾,
logAppend: true
storage:
#mongod實體存盤其資料的目錄,storage.dbPath設定僅適用于mongod,
dbPath: "/mongodb/sharded_cluster/myshardrs01_27318/data/db"
journal:
#啟用或禁用持久性日志以確保資料檔案保持有效和可恢復,
enabled: true
processManagement:
#啟用在后臺運行mongos或mongod行程的守護行程模式,
fork: true
#指定用于保存mongos或mongod行程的行程ID的檔案位置,其中mongos或mongod將寫入其PID
pidFilePath: "/mongodb/sharded_cluster/myshardrs01_27318/log/mongod.pid"
net:
#服務實體系結所有IP,有副作用,副本集初始化的時候,節點名字會自動設定為本地域名,而不是ip
#bindIpAll: true
#服務實體系結的IP
bindIp: localhost,192.168.0.2
#bindIp
#系結的埠
port: 27318
replication:
#副本集的名稱
replSetName: myshardrs01
sharding:
#分片角色
clusterRole: shardsvr
3 新建或修改組態檔: vim /mongodb/sharded_cluster/myshardrs01_27418/mongod.conf
systemLog:
#MongoDB發送所有日志輸出的目標指定為檔案
destination: file
#mongod或mongos應向其發送所有診斷日志記錄資訊的日志檔案的路徑
path: "/mongodb/sharded_cluster/myshardrs01_27418/log/mongod.log"
#當mongos或mongod實體重新啟動時,mongos或mongod會將新條目附加到現有日志檔案的末尾,
logAppend: true
storage:
#mongod實體存盤其資料的目錄,storage.dbPath設定僅適用于mongod,
dbPath: "/mongodb/sharded_cluster/myshardrs01_27418/data/db"
journal:
#啟用或禁用持久性日志以確保資料檔案保持有效和可恢復,
enabled: true
processManagement:
#啟用在后臺運行mongos或mongod行程的守護行程模式,
fork: true
#指定用于保存mongos或mongod行程的行程ID的檔案位置,其中mongos或mongod將寫入其PID
pidFilePath: "/mongodb/sharded_cluster/myshardrs01_27418/log/mongod.pid"
net:
#服務實體系結所有IP,有副作用,副本集初始化的時候,節點名字會自動設定為本地域名,而不是ip
#bindIpAll: true
#服務實體系結的IP
bindIp: localhost,192.168.0.2
#bindIp
#系結的埠
port: 27418
replication:
#副本集的名稱
replSetName: myshardrs01
sharding:
#分片角色
clusterRole: shardsvr
4 新建或修改組態檔: vim /mongodb/sharded_cluster/myshardrs01_27518/mongod.conf
systemLog:
#MongoDB發送所有日志輸出的目標指定為檔案
destination: file
#mongod或mongos應向其發送所有診斷日志記錄資訊的日志檔案的路徑
path: "/mongodb/sharded_cluster/myshardrs01_27518/log/mongod.log"
#當mongos或mongod實體重新啟動時,mongos或mongod會將新條目附加到現有日志檔案的末尾,
logAppend: true
storage:
#mongod實體存盤其資料的目錄,storage.dbPath設定僅適用于mongod,
dbPath: "/mongodb/sharded_cluster/myshardrs01_27518/data/db"
journal:
#啟用或禁用持久性日志以確保資料檔案保持有效和可恢復,
enabled: true
processManagement:
#啟用在后臺運行mongos或mongod行程的守護行程模式,
fork: true
#指定用于保存mongos或mongod行程的行程ID的檔案位置,其中mongos或mongod將寫入其PID
pidFilePath: "/mongodb/sharded_cluster/myshardrs01_27518/log/mongod.pid"
net:
#服務實體系結所有IP,有副作用,副本集初始化的時候,節點名字會自動設定為本地域名,而不是ip
#bindIpAll: true
#服務實體系結的IP
bindIp: localhost,192.168.0.2
#bindIp
#系結的埠
port: 27518
replication:
#副本集的名稱
replSetName: myshardrs01
sharding:
#分片角色
clusterRole: shardsvr
5 啟動第一套副本集:一主一副本一仲裁
依次啟動三個mongod服務:
/usr/yltrcc/mongodb/bin/mongod -f /mongodb/sharded_cluster/myshardrs01_27318/mongod.conf
/usr/yltrcc/mongodb/bin/mongod -f /mongodb/sharded_cluster/myshardrs01_27418/mongod.conf
/usr/yltrcc/mongodb/bin/mongod -f /mongodb/sharded_cluster/myshardrs01_27518/mongod.conf
6 初始化副本集和創建主節點
使用客戶端命令連接任意一個節點,但這里盡量要連接主節點: /usr/yltrcc/mongodb/bin/mongo --host 180.76.159.126 --port 27318
執行命令:
# 初始化副本集
> rs.initiate()
# 查看副本集情況
myshardrs01:SECONDARY> rs.status()
# 主節點配置查看
myshardrs01:PRIMARY> rs.conf()
7 添加副本節點和仲裁節點
# 添加從節點
myshardrs01:PRIMARY> rs.add("180.76.159.126:27418")
# 添加仲裁節點
myshardrs01:PRIMARY> rs.addArb("180.76.159.126:27518")
# 查看配置情況
myshardrs01:PRIMARY> rs.conf()
配置節點副本集創建
1 準備存放資料和日志的目錄
#-----------myshardrs01
mkdir -p /mongodb/sharded_cluster/myconfigrs_27019/log \ &
mkdir -p /mongodb/sharded_cluster/myconfigrs_27019/data/db \ &
mkdir -p /mongodb/sharded_cluster/myconfigrs_27119/log \ &
mkdir -p /mongodb/sharded_cluster/myconfigrs_27119/data/db \ &
mkdir -p /mongodb/sharded_cluster/myconfigrs_27219/log \ &
mkdir -p /mongodb/sharded_cluster/myconfigrs_27219/data/db
2 新建或修改組態檔:vim /mongodb/sharded_cluster/myconfigrs_27019/mongod.conf
systemLog:
#MongoDB發送所有日志輸出的目標指定為檔案
destination: file
#mongod或mongos應向其發送所有診斷日志記錄資訊的日志檔案的路徑
path: "/mongodb/sharded_cluster/myconfigrs_27019/log/mongod.log"
#當mongos或mongod實體重新啟動時,mongos或mongod會將新條目附加到現有日志檔案的末尾,
logAppend: true
storage:
#mongod實體存盤其資料的目錄,storage.dbPath設定僅適用于mongod,
dbPath: "/mongodb/sharded_cluster/myconfigrs_27019/data/db"
journal:
#啟用或禁用持久性日志以確保資料檔案保持有效和可恢復,
enabled: true
processManagement:
#啟用在后臺運行mongos或mongod行程的守護行程模式,
fork: true
#指定用于保存mongos或mongod行程的行程ID的檔案位置,其中mongos或mongod將寫入其PID
pidFilePath: "/mongodb/sharded_cluster/myconfigrs_27019/log/mongod.pid"
net:
#服務實體系結所有IP,有副作用,副本集初始化的時候,節點名字會自動設定為本地域名,而不是ip
#bindIpAll: true
#服務實體系結的IP
bindIp: localhost,192.168.0.2
#bindIp
#系結的埠
port: 27019
replication:
#副本集的名稱
replSetName: myconfigrs
sharding:
#分片角色
clusterRole: configsvr
3 新建或修改組態檔: vim /mongodb/sharded_cluster/myconfigrs_27119/mongod.conf
systemLog:
#MongoDB發送所有日志輸出的目標指定為檔案
destination: file
#mongod或mongos應向其發送所有診斷日志記錄資訊的日志檔案的路徑
path: "/mongodb/sharded_cluster/myconfigrs_27119/log/mongod.log"
#當mongos或mongod實體重新啟動時,mongos或mongod會將新條目附加到現有日志檔案的末尾,
logAppend: true
storage:
#mongod實體存盤其資料的目錄,storage.dbPath設定僅適用于mongod,
dbPath: "/mongodb/sharded_cluster/myconfigrs_27119/data/db"
journal:
#啟用或禁用持久性日志以確保資料檔案保持有效和可恢復,
enabled: true
processManagement:
#啟用在后臺運行mongos或mongod行程的守護行程模式,
fork: true
#指定用于保存mongos或mongod行程的行程ID的檔案位置,其中mongos或mongod將寫入其PID
pidFilePath: "/mongodb/sharded_cluster/myconfigrs_27119/log/mongod.pid"
net:
#服務實體系結所有IP,有副作用,副本集初始化的時候,節點名字會自動設定為本地域名,而不是ip
#bindIpAll: true
#服務實體系結的IP
bindIp: localhost,192.168.0.2
#bindIp
#系結的埠
port: 27119
replication:
#副本集的名稱
replSetName: myconfigrs
sharding:
#分片角色
clusterRole: configsvr
4 新建或修改組態檔: vim /mongodb/sharded_cluster/myconfigrs_27219/mongod.conf
systemLog:
#MongoDB發送所有日志輸出的目標指定為檔案
destination: file
#mongod或mongos應向其發送所有診斷日志記錄資訊的日志檔案的路徑
path: "/mongodb/sharded_cluster/myconfigrs_27219/log/mongod.log"
#當mongos或mongod實體重新啟動時,mongos或mongod會將新條目附加到現有日志檔案的末尾,
logAppend: true
storage:
#mongod實體存盤其資料的目錄,storage.dbPath設定僅適用于mongod,
dbPath: "/mongodb/sharded_cluster/myconfigrs_27219/data/db"
journal:
#啟用或禁用持久性日志以確保資料檔案保持有效和可恢復,
enabled: true
processManagement:
#啟用在后臺運行mongos或mongod行程的守護行程模式,
fork: true
#指定用于保存mongos或mongod行程的行程ID的檔案位置,其中mongos或mongod將寫入其PID
pidFilePath: "/mongodb/sharded_cluster/myconfigrs_27219/log/mongod.pid"
net:
#服務實體系結所有IP,有副作用,副本集初始化的時候,節點名字會自動設定為本地域名,而不是ip
#bindIpAll: true
#服務實體系結的IP
bindIp: localhost,192.168.0.2
#bindIp
#系結的埠
port: 27219
replication:
#副本集的名稱
replSetName: myconfigrs
sharding:
#分片角色
clusterRole: configsvr
5 啟動第一套副本集:一主一副本一仲裁
依次啟動三個mongod服務:
/usr/yltrcc/mongodb/bin/mongod -f /mongodb/sharded_cluster/myconfigrs_27019/mongod.conf
/usr/yltrcc/mongodb/bin/mongod -f /mongodb/sharded_cluster/myconfigrs_27119/mongod.conf
/usr/yltrcc/mongodb/bin/mongod -f /mongodb/sharded_cluster/myconfigrs_27219/mongod.conf
6 初始化副本集和創建主節點
使用客戶端命令連接任意一個節點,但這里盡量要連接主節點: /usr/yltrcc/mongodb/bin/mongo --host 180.76.159.126 --port 27219
執行命令:
# 初始化副本集
> rs.initiate()
# 查看副本集情況
myshardrs01:SECONDARY> rs.status()
# 主節點配置查看
myshardrs01:PRIMARY> rs.conf()
7 添加兩個副本節點
# 添加從節點
myshardrs01:PRIMARY> rs.add("180.76.159.126:27119")
myshardrs01:PRIMARY> rs.add("180.76.159.126:27219")
# 查看配置情況
myshardrs01:PRIMARY> rs.conf()
路由節點的創建
第一個路由節點
1 準備存放資料和日志的目錄
#-----------mongos01
mkdir -p /mongodb/sharded_cluster/mymongos_27017/log
2 新建或修改組態檔:vi /mongodb/sharded_cluster/mymongos_27017/mongos.conf
systemLog:
#MongoDB發送所有日志輸出的目標指定為檔案
destination: file
#mongod或mongos應向其發送所有診斷日志記錄資訊的日志檔案的路徑
path: "/mongodb/sharded_cluster/mymongos_27017/log/mongod.log"
#當mongos或mongod實體重新啟動時,mongos或mongod會將新條目附加到現有日志檔案的末尾,
logAppend: true
storage:
#mongod實體存盤其資料的目錄,storage.dbPath設定僅適用于mongod,
dbPath: "/mongodb/sharded_cluster/mymongos_27017/data/db"
journal:
#啟用或禁用持久性日志以確保資料檔案保持有效和可恢復,
enabled: true
processManagement:
#啟用在后臺運行mongos或mongod行程的守護行程模式,
fork: true
#指定用于保存mongos或mongod行程的行程ID的檔案位置,其中mongos或mongod將寫入其PID
pidFilePath: "/mongodb/sharded_cluster/mymongos_27017/log/mongod.pid"
net:
#服務實體系結所有IP,有副作用,副本集初始化的時候,節點名字會自動設定為本地域名,而不是ip
#bindIpAll: true
#服務實體系結的IP
bindIp: localhost,192.168.0.2
#bindIp
#系結的埠
port: 27017
sharding:
#指定配置節點副本集
configDB: myconfigrs/180.76.159.126:27019,180.76.159.126:27119,180.76.159.126:27219
3 啟動mongod服務:
/usr/yltrcc/mongodb/bin/mongod -f /mongodb/sharded_cluster/mymongos_27017/mongos.conf
4 客戶端登錄mongos: /usr/yltrcc/mongodb/bin/mongo --host 180.76.159.126 --port 27017
通過路由節點操作,現在只是連接了配置節點,還沒有連接分片資料節點,因此無法寫入業務資料,
5 在路由節點上進行分片配置操作
添加分片:sh.addShard("IP:Port")
# 添加第一套副本集
sh.addShard("myshardrs01/192.168.0.2:27018,180.76.159.126:27118,180.76.159.126:2 7218")
# 添加第二套副本集
sh.addShard("myshardrs02/192.168.0.2:27318,180.76.159.126:27418,180.76.159.126:2 7518")
提示:如果添加分片失敗,需要先手動移除分片,檢查添加分片的資訊的正確性后,再次添加分片,
移除分片參考(了解):
use admin
db.runCommand( { removeShard: "myshardrs02" } )
開啟分片功能: sh.enableSharding("庫名")、sh.shardCollection("庫名.集合名",{"key":1})
在mongos上的articledb資料庫配置sharding
sh.enableSharding("articledb")
# 查看分片狀態
sh.status()
集合分片: 對集合分片,你必須使用 sh.shardCollection() 方法指定集合和分片鍵,
語法格式:sh.shardCollection(namespace, key, unique)
引數說明:
| Parameter | Type | Description |
| namespace | string | 要(分片)共享的目標集合的命名空間,格式: |
| key | document | 用作分片鍵的索引規范檔案,shard鍵決定MongoDB如何在shard之間分發檔案,除非集合為空,否則索引必須在shard collection命令之前存在,如果集合為空,則MongoDB在對集合進行分片之前創建索引,前提是支持分片鍵的索引不存在,簡單的說:由包含欄位和該欄位的索引遍歷方向的檔案組成, |
| unique | boolean | 當值為true情況下,片鍵欄位上會限制為確保是唯一索引,哈希策略片鍵不支持唯一索引,默認是false, |
6 分片后插入資料測驗
7 增加另一個路由節點
美文佳句
電影散場,影院里的觀眾皆唏噓而去,我和太太看到最后,直到音樂的休止落下、字幕拉到最底部,我似乎不能完整記住險象環生的情節,但那印度電影的唯美音樂,和雖然處于隱線卻從來沒有放棄追逐的愛情,讓我喜歡和回味,
你好,我是yltrcc,日常分享技術點滴,歡迎關注我的公眾號:ylcoder
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/415284.html
標籤:其他
上一篇:MongoDB 安全認證

