成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

從MongoDB2.4升級(jí)到3.0的詳細(xì)步驟

whatsns / 3409人閱讀

摘要:于是就有了這次的版本升級(jí)任務(wù)。如果返回的值小于,那么則需要用在庫(kù)里具有權(quán)限的用戶連上的庫(kù)然后執(zhí)行用戶認(rèn)證格式轉(zhuǎn)換。參考文檔及軟件下載鏈接升級(jí)官方指南升級(jí)官方指南警告的解決方案下載下載

最近為了長(zhǎng)遠(yuǎn)考慮想把項(xiàng)目MongoDB里存放的400多萬(wàn)數(shù)據(jù)遷移到云服務(wù)廠商提供的MongoDB服務(wù)上,省去自己去維護(hù)的時(shí)間,但是看了下云服務(wù)對(duì)MongoDB數(shù)據(jù)遷移上云的要求是自建MongoDB數(shù)據(jù)庫(kù)的最低版本為3.0。 公司服務(wù)器上的MongoDB是當(dāng)時(shí)用yum安裝的,版本還是2.4。于是就有了這次MongoDB的版本升級(jí)任務(wù)。好了閑話少說(shuō)直接進(jìn)入正題部分。

首先闡明,本文描述的升級(jí)只針對(duì)單點(diǎn)部署或者是master-slave部署的MongDB的版本升級(jí),不過(guò)文中引用的官方文檔中有關(guān)于復(fù)制集或者分片MongoDB的版本升級(jí)指南,可以查閱后按照步驟操作。

2.4版本升級(jí)到3.0的話由于數(shù)據(jù)兼容性的問(wèn)題,需要先升級(jí)到2.6版本,再升級(jí)至3.0

升級(jí)前先來(lái)說(shuō)個(gè)老生常談的原則:版本升級(jí)一定要在測(cè)試環(huán)境成功測(cè)試后再在production機(jī)器上進(jìn)行版本升級(jí)。

步驟:
一、2.4升級(jí)到2.6

1、下載2.6版本的MongoDB程序包并解壓

curl https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.6.11.tgz -o ./mongodb-2.6.tgz
tar -xzvf mongodb-2.6.tgz    

2、用2.6版本的mongo shell 連接2.4版本的mongos 然后運(yùn)行升級(jí)檢查

mongo —-host db.yourdomain.com:27017 admin -u yourname -p your pass
use admin
db.upgradeCheckAllDBs()

如果mongo服務(wù)需要啟用用戶驗(yàn)證那么在升級(jí)到2.6版本之前要確保admin庫(kù)里至少有一個(gè)權(quán)限為userAdminAnyDatabase的用戶存在

use admin
db.addUser({user: "root", pwd: "xxxxd", roles: ["userAdminAnyDatabase"]})

3.將2.4版本mongo的二進(jìn)制文件替換成剛才下載的程序包里的bin目錄里的二進(jìn)制文件

sudo service mongod stop
sudo chown -R root:root yourmongo2.6dir/bin 
//把mongodb用到的二進(jìn)制文件換成2.6版本的二進(jìn)制文件然后再啟動(dòng)mongod 
sudo service mongod start

二、2.6升級(jí)到3.0
1、下載3.0的程序包

curl https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.9.tgz -o ./mongodb-3.0

2、升級(jí)mongodb的用戶數(shù)據(jù)格式
2.6升級(jí)到3.0前需要驗(yàn)證現(xiàn)有的用戶schema, 在3.0中MongoDB完全棄用了之前的用戶授權(quán)驗(yàn)證模式,所以在升級(jí)3.0前需要把2.6的用戶schema升級(jí)到兼容3.0的格式。

use admin
db.system.version.find( { _id: "authSchema" })

如果返回的值小于3,那么則需要用在admin庫(kù)里具有userAdminAnyDatabase權(quán)限的用戶連上mongo的admin庫(kù)然后執(zhí)行用戶認(rèn)證格式轉(zhuǎn)換。

db.getSiblingDB("admin").runCommand({authSchemaUpgrade: 1 });

3、停掉mongod 將2.6版本mongo的二進(jìn)制文件替換成下載的3.0程序包里的bin目錄里的二進(jìn)制文件,然后重新啟動(dòng)mongod。

大功告成,用mongo連接上數(shù)據(jù)庫(kù)進(jìn)入mongo shell后就會(huì)發(fā)現(xiàn)命令提示出當(dāng)前版本是3.0,不過(guò)升級(jí)到3.0進(jìn)入mongo shell后會(huì)有WARNING提示當(dāng)前服務(wù)器的THP(Transparent Huge Pages)是打開(kāi)的,系統(tǒng)啟用這個(gè)策略會(huì)影響MongoDB的性能,在StackOverflow上發(fā)現(xiàn)了一個(gè)比較好的解決方案,稍后會(huì)給出鏈接。

好了,這就是我在本次MongoDB升級(jí)中執(zhí)行的所有步驟,說(shuō)簡(jiǎn)單也不簡(jiǎn)單,說(shuō)難也不難,主要是設(shè)計(jì)的參考文檔比較多,這里記錄下升級(jí)步驟即是希望幫助有升級(jí)需要的同仁能少走彎路也是方便自己備查。

參考文檔及軟件下載鏈接:

升級(jí)2.6MongoDB官方指南
升級(jí)3.0MongoDB官方指南
THP警告的解決方案
MongoDB2.6下載
MongoDB3.0下載

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/18819.html

相關(guān)文章

  • (翻譯) MongoDB(11) 在 SUSE 上安裝MongoDB社區(qū)版

    摘要:概述使用這個(gè)教程在和使用軟件包安裝社區(qū)版雖然發(fā)行版包含自己的軟件包官方的社區(qū)版包通常是最新的平臺(tái)支持本安裝教程僅支持位操作系統(tǒng)詳細(xì)信息請(qǐng)參閱平臺(tái)支持軟件包在自己的存儲(chǔ)庫(kù)中提供官方支持軟件包此存儲(chǔ)庫(kù)包含以下軟件包軟件名簡(jiǎn)介一個(gè)元軟件包將自動(dòng) 概述 使用這個(gè)教程在 SUSE Linux 11 和 12 使用 .rpm 軟件包安裝 MongoDB 社區(qū)版. 雖然 SUSE 發(fā)行版包含自己的 ...

    zone 評(píng)論0 收藏0
  • (翻譯) MongoDB(12) 在 Amazon Linux 上安裝MongoDB社區(qū)版

    摘要:概述使用這個(gè)教程在使用軟件包安裝社區(qū)版本安裝教程僅支持位操作系統(tǒng)詳細(xì)信息請(qǐng)參閱平臺(tái)支持軟件包在自己的存儲(chǔ)庫(kù)中提供官方支持軟件包此存儲(chǔ)庫(kù)包含以下軟件包軟件名簡(jiǎn)介一個(gè)元軟件包將自動(dòng)安裝下面列出的四個(gè)組件包包含守護(hù)程序和關(guān)聯(lián)配置和初始化腳本 概述 使用這個(gè)教程在 Amazon Linux 使用 .rpm 軟件包安裝 MongoDB 社區(qū)版. 本安裝教程僅支持64位操作系統(tǒng). 詳細(xì)信息請(qǐng)參閱平...

    gself 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<