您好,登錄后才能下訂單哦!
通過Yum更新MongoDB 2.6 to 3.0
由于之前使用的是yum安裝的MongoDB 2.6(根據官網提示,如果你準備從2.4升級起來,需要先行升級至2.6版本,再進行3.0的升級),為了使用MongoDB多個新特性,如WiredTiger引擎,中文檢索等,而根據MongoDB版本劃分可知,雙數為穩定版本,所以決定升級至最新的MongoDb 3.2(筆者寫這篇文時MongoDB 3.3為最新版本)。
其實根據官網所給文檔就能正常升級了,本文也是參考官網文檔做升級,如果你準備參考本文進行操作,希望能在測試環境下測試沒問題再上線以免出現問題。
升級開始:
退出MongoDB 2.6服務
service mongod stop
關于退出的方法有很多種,比如使用netstat -nltp找到進程號,使用然后殺死進程(不建議使用-9直接強退);
又比如進入Mongo客戶端,使用db.shutdownServer()關閉;
亦或者使用官網推薦方法等等,這里就不一一列出來,請自行選擇使用。
mongod --dbpath /var/mongod/data --shutdown
2.新增yum源
vim /etc/yum.repos.d/mongodb-org-3.0.repo
編輯內容:
[mongodb-org-3.0] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.0/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-3.0.asc
3.Yum升級開始
查看下yum信息
yum info mongodb-org
開始升級,等待升級完成
yum upgrade mongodb-org
4.嘗試啟動服務
service mongod start
發現啟動失敗?不要著急,讓我們查看日志(本日志路徑為默認路徑,日志路徑可以使用配置文件修改)
tail -f /var/log/mongodb/mongod.log
2016-06-27T02:53:32.961-0700 E NETWORK [initandlisten] Failed to unlink socket file /tmp/mongodb-27017.sock errno:1 Operation not permitted 2016-06-27T02:53:32.961-0700 I - [initandlisten] Fatal Assertion 28578 2016-06-27T02:53:32.961-0700 I - [initandlisten] ***aborting after fassert() failure
根據日志提示,是無法unlink sock文件,需要我們手動刪除sock文件,刪除后運行即可。
最后,升級3.0到3.2的方法重復之前步驟即可,把MongDB的YUM源修改成3.2即可完成升級。
注:根據官網提示,3.2默認開啟WiredTiger引擎
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。