欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Mongodb 刪除添加分片與非分片表維護(hù)

 更新時(shí)間:2016年01月15日 09:10:01   作者:aqszhuaihuai  
MongoDB 是一個(gè)介于關(guān)系數(shù)據(jù)庫(kù)和非關(guān)系數(shù)據(jù)庫(kù)之間的產(chǎn)品,是非關(guān)系數(shù)據(jù)庫(kù)當(dāng)中功能最豐富,最像關(guān)系數(shù)據(jù)庫(kù)的。通過(guò)本文給大家介紹Mongodb 刪除添加分片與非分片表維護(hù)的相關(guān)知識(shí),對(duì)此文感興趣的朋友一起學(xué)習(xí)吧

MongoDB 是一個(gè)基于分布式文件存儲(chǔ)的數(shù)據(jù)庫(kù)。由 C++ 語(yǔ)言編寫(xiě)。旨在為 WEB 應(yīng)用提供可擴(kuò)展的高性能數(shù)據(jù)存儲(chǔ)解決方案。

MongoDB 是一個(gè)介于關(guān)系數(shù)據(jù)庫(kù)和非關(guān)系數(shù)據(jù)庫(kù)之間的產(chǎn)品,是非關(guān)系數(shù)據(jù)庫(kù)當(dāng)中功能最豐富,最像關(guān)系數(shù)據(jù)庫(kù)的。

一、如何移除分片

1、確認(rèn)balancer已經(jīng)開(kāi)啟

mongos> sh.getBalancerState()
true

2、移除分片

注:在admin db下執(zhí)行命令。

mongos> use admin
switched to db admin
mongos> db.runCommand( { removeShard: "shard3" } )
{
"msg" : "draining started successfully",
"state" : "started",
"shard" : "shard3",
"ok" : 1
}

3、檢查遷移的狀態(tài)

同樣執(zhí)行

mongos> use admin
switched to db admin
mongos> db.runCommand( { removeShard: "shard3" } )
{
"msg" : "draining ongoing",
"state" : "ongoing",
"remaining" : {
"chunks" : NumberLong(3),
"dbs" : NumberLong(0)
},
"ok" : 1
}

remaining中的chunks表示還有多少數(shù)據(jù)塊未遷移。

4、移除未分片數(shù)據(jù)

In a cluster, a database with unsharded collections stores those collections only on a single shard.
That shard becomes the primary shard for that database. (Different databases in a cluster can have different primary shards.)
WARNING
Do not perform this procedure until you have finished draining the shard.
1)To determine if the shard you are removing is the primary shard for any of the cluster's databases, issue one of the following methods:
sh.status()
db.printShardingStatus()
In the resulting document, the databases field lists each database and its primary shard.
For example, the following database field shows that the products database uses mongodb0 as the primary shard:
{ "_id" : "products", "partitioned" : true, "primary" : "mongodb0" }
2)To move a database to another shard, use the movePrimary command. For example, to migrate all remaining unsharded data from mongodb0 to mongodb1,
issue the following command:
use admin
db.runCommand( { movePrimary: "products", to: "mongodb1" }) --products為db name
This command does not return until MongoDB completes moving all data, which may take a long time.
The response from this command will resemble the following:
{ "primary" : "mongodb1", "ok" : 1 }
If you use the movePrimary command to move un-sharded collections, you must either restart all mongos instances,
or use the flushRouterConfig command on all mongos instances before writing any data to the cluster.
This action notifies the mongos of the new shard for the database.
If you do not update the mongos instances' metadata cache after using movePrimary, the mongos may not write data to the correct shard.
To recover, you must manually intervene.

根據(jù)上面所說(shuō),遷移非分片表 時(shí) 最好停機(jī),在運(yùn)行db.runCommand( { movePrimary: "products", to: "mongodb1" }) 命令完成之后,刷新所有mongos后(所有mongos上運(yùn)行db.runCommand("flushRouterConfig")),再對(duì)外提供服務(wù)。當(dāng)然也可以重新啟動(dòng)所有mongos實(shí)例 。

5、完成遷移

mongos> use admin
switched to db admin
mongos> db.runCommand( { removeShard: "shard3" } )
{
"msg" : "removeshard completed successfully",
"state" : "completed",
"shard" : "shard3",
"ok" : 1
}

如果state為 completed,表示已完成遷移。

二、添加分片

1、首先確認(rèn)balancer已經(jīng)開(kāi)啟

mongos> sh.getBalancerState()
true

2、執(zhí)行添加分片的命令

如果出現(xiàn)以下錯(cuò)誤,刪除目標(biāo)shard3上的test1數(shù)據(jù)庫(kù),再次執(zhí)行命令

mongos> sh.addShard("shard3/192.168.137.138:27019")
{
"ok" : 0,
"errmsg" : "can't add shard shard3/192.168.137.138:27019 because a local database 'test1' exists in another shard1:shard1/192.168.137.111:27017,192.168.137.75:27017"
}
mongos> sh.addShard("shard3/192.168.137.138:27019")
{ "shardAdded" : "shard3", "ok" : 1 }

最后運(yùn)行sh.status()命令確認(rèn)遷移是否成功,可能會(huì)花比較長(zhǎng)的時(shí)間。

以上內(nèi)容是給大家介紹了Mongodb 刪除添加分片與非分片表維護(hù)的全部敘述,希望對(duì)大家有所幫助。

相關(guān)文章

  • 教大家8天學(xué)通MongoDB——第一天 基礎(chǔ)入門篇

    教大家8天學(xué)通MongoDB——第一天 基礎(chǔ)入門篇

    MongoDB是目前非常流行的一種非關(guān)系型數(shù)據(jù)庫(kù)(NoSQL),因其操作簡(jiǎn)單、完全免費(fèi)、源碼公開(kāi)等特點(diǎn),受到了IT從業(yè)人員的青睞,并被廣泛部署于實(shí)際的生產(chǎn)環(huán)境中。本文教大家8天學(xué)通MongoDB——第一天 基礎(chǔ)入門篇,感興趣的朋友一起來(lái)了解了解吧
    2015-09-09
  • 一文搞懂Scrapy與MongoDB交互過(guò)程

    一文搞懂Scrapy與MongoDB交互過(guò)程

    這篇文章主要介紹了Scrapy與MongoDB交互過(guò)程,文末給大家介紹了類方法@classmethod的相關(guān)知識(shí),需要的朋友可以參考下
    2022-07-07
  • 2021最新版windows10系統(tǒng)MongoDB數(shù)據(jù)庫(kù)安裝及配置環(huán)境

    2021最新版windows10系統(tǒng)MongoDB數(shù)據(jù)庫(kù)安裝及配置環(huán)境

    這篇文章主要介紹了2021最新版MongoDB數(shù)據(jù)庫(kù)安裝及配置環(huán)境(windows10系統(tǒng)),本文通過(guò)圖文實(shí)例相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-03-03
  • MongoDB快速翻頁(yè)的方法

    MongoDB快速翻頁(yè)的方法

    這篇文章主要為大家詳細(xì)介紹了MongoDB快速翻頁(yè)的方法,通過(guò)實(shí)例學(xué)習(xí)在MongoDB中翻閱數(shù)據(jù)的不同方式,感興趣的小伙伴們可以參考一下
    2016-05-05
  • mongodb基礎(chǔ)入門_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    mongodb基礎(chǔ)入門_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    這篇文章主要為大家詳細(xì)介紹了mongodb基礎(chǔ)入門的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • MongoDB查詢操作限制返回字段的方法

    MongoDB查詢操作限制返回字段的方法

    這篇文章主要介紹了MongoDB查詢操作限制返回字段的方法,需要的朋友可以參考下
    2014-05-05
  • MongoDB中如何使用JOIN操作詳解

    MongoDB中如何使用JOIN操作詳解

    相信大家都知道m(xù)ongodb是不支持join操作的,因此我們只能自己來(lái)實(shí)現(xiàn)這個(gè)功能。所以下面這篇文章主要給大家介紹了關(guān)于在MongoDB中如何使用JOIN操作的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友們下面來(lái)一起看看吧。
    2017-07-07
  • 如何利用MongoDB存儲(chǔ)Docker日志詳解

    如何利用MongoDB存儲(chǔ)Docker日志詳解

    這篇文章主要給大家介紹了關(guān)于如何利用MongoDB存儲(chǔ)Docker日志的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友沒(méi)呢下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-09-09
  • MongoDB中優(yōu)雅刪除大量數(shù)據(jù)的三種方式

    MongoDB中優(yōu)雅刪除大量數(shù)據(jù)的三種方式

    最近接到一個(gè)任務(wù),線上的mongodb積累了大量的無(wú)用數(shù)據(jù),導(dǎo)致宕機(jī),現(xiàn)在對(duì)里面的數(shù)據(jù)進(jìn)行批量刪除,所以這篇文章主要給大家介紹了關(guān)于MongoDB中優(yōu)雅刪除大量數(shù)據(jù)的三種方式,需要的朋友可以參考下
    2021-10-10
  • MongoDB基礎(chǔ)入門之創(chuàng)建、刪除集合操作

    MongoDB基礎(chǔ)入門之創(chuàng)建、刪除集合操作

    這篇文章主要給大家介紹了關(guān)于MongoDB基礎(chǔ)入門之集合操作的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03

最新評(píng)論