修復(fù) Mac brew 安裝 mongodb 報(bào) Error: No available formula with the name ‘mongodb’ 問題詳解
根據(jù) homebrew-brew 官方的解釋得知,MongoDB 不再是開源的了,并且已經(jīng)從 Homebrew中移除 #43770
正是由于 MongoDB 的商業(yè)化不太理想,所以它選擇了閉源。所以,在它閉源之前的那些 brew 安裝方法都會報(bào)錯了。網(wǎng)上很多的文章都是基于以前古老的安裝方式,這種方式導(dǎo)致 brew 無法安裝,報(bào)錯。
Error: No available formula with the name ‘mongodb'
新的安裝方式可以參考 github 主頁,https://github.com/mongodb/homebrew-brew。
新的安裝方式告訴我們,需要先執(zhí)行:
brew tap mongodb/brew
接著在執(zhí)行:
brew install mongodb-community
這是安裝的社區(qū)版的。如果需要安裝指定版本的,可以帶上 @版本號。
brew install mongodb-community@4.2 brew install mongodb-community@4.0 brew install mongodb-community@3.6
如果僅想安裝最新的 mongoshell,則可以執(zhí)行下面的命令。
brew install mongodb-community-shell
如果出現(xiàn) Download failed 或 DownloadError: Failed to download resource “mongodb-community” 錯誤,則重復(fù)執(zhí)行安裝命令,進(jìn)行下載。這屬于你的網(wǎng)絡(luò)問題,多嘗試幾次。
安裝后的默認(rèn)配置文件路徑如下:
#配置文件:/usr/local/etc/mongod.conf #日志目錄路徑:/usr/local/var/log/mongodb #數(shù)據(jù)目錄路徑:/usr/local/var/mongodb
有了 brew 后,啟動 Mongo 和停止 Mongo 就很方便了。
#啟動 brew services start mongodb-community #或 brew services start mongodb/brew/mongodb-community #停止 brew services stop mongodb-community #或 brew services stop mongodb/brew/mongodb-community
安裝好了之后,我們需要做一些配置,不能讓 mongo 裸奔,這些年出了不少泄露數(shù)據(jù)的事故,我們得配置一下安全認(rèn)證。
首先,我們啟動 mongo 成功后,執(zhí)行下面的命令:
#鏈接 mongo mongo #切換db,或創(chuàng)建 xttblog use xttblog #創(chuàng)建用戶admin db.createUser({ user:'admin', pwd:'admin', roles:[{role:'readWrite',db:'xttblog'}] })
如果創(chuàng)建成功,則提示:Successfully added user。
Successfully added user: { "user" : "admin", "roles" : [ { "role" : "readWrite", "db" : "xttblog" } ] }
角色設(shè)置需要注意,userAdminAnyDatabase 之類的默認(rèn)沒有了,可以通過 show roles 命令查看角色。
#查看角色 show roles #查看用戶 show users
如果要修改用戶角色,則可以執(zhí)行 db.updateUser 命令。
db.updateUser( "admin", { roles:[ {role:"readWrite",db:"xttblog"}, {role:"userAdmin",db:"xttblog"}, {role:"dbAdmin",db:"xttblog"} ] } )
操作完成后,我們就可以修改 mongo 的配置文件了,開啟認(rèn)證。
vi /usr/local/etc/mongod.conf
在文件最后加入:“#開啟權(quán)限校驗(yàn)”之后的配置。
systemLog: destination: file path: /usr/local/var/log/mongodb/mongo.log logAppend: true storage: dbPath: /usr/local/var/mongodb net: bindIp: 127.0.0.1 port: 27017 # 開啟權(quán)限校驗(yàn) security: authorization: enabled
重啟服務(wù)。再次操作 mongo 就需要進(jìn)行認(rèn)證了。
mongo use xttblog db.auth("xttblog","xttblog")
同樣的 SpringBoot 整合 Mongo 的 url 就得配置上密碼認(rèn)證了。
mongodb://admin:admin@localhost:27017/xttblog
至此MongoDB安裝完成,更多關(guān)于安裝 mongodb 報(bào)錯的問題請查看下面的相關(guān)鏈接
- golang 打印error的堆棧信息操作
- 基于golang如何實(shí)現(xiàn)error工具包詳解
- Django錯誤:TypeError at / ''bool'' object is not callable解決
- 解決啟動MongoDB錯誤:error while loading shared libraries: libstdc++.so.6:cannot open shared object file:
- django.db.utils.ProgrammingError: (1146, u“Table‘’ doesn’t exist”)問題的解決
- GO語言標(biāo)準(zhǔn)錯誤處理機(jī)制error用法實(shí)例
- 淺析golang開發(fā)Error的使用詳解
相關(guān)文章
基于Mongodb分布式鎖解決定時任務(wù)并發(fā)執(zhí)行問題
這篇文章主要介紹了基于Mongodb分布式鎖解決定時任務(wù)并發(fā)執(zhí)行問題,網(wǎng)上有很多分布式鎖的實(shí)現(xiàn)方案,基于redis、zk、等有很多,但是我的就是一個用了mysql和mongo的小應(yīng)用,本文給大家詳細(xì)講解,需要的朋友可以參考下2023-04-04解決mongodb在ubuntu下啟動失敗,提示couldn‘t remove fs lock errno:9 Bad
之前MongoDB啟動的時候是蠻正常的,不知道后來啟動報(bào)錯了,就把粘貼出來查詢了。經(jīng)過一番百度,才找的處理的辦法,分享給大家2014-08-08MongoDB查詢字段沒有創(chuàng)建索引導(dǎo)致的連接超時異常解案例分享
這篇文章主要介紹了MongoDB查詢字段沒有創(chuàng)建索引導(dǎo)致的連接超時異常解案例分享,本文是生產(chǎn)環(huán)境下總結(jié)而來,需要的朋友可以參考下2014-10-10分布式文檔存儲數(shù)據(jù)庫之MongoDB分片集群的問題
這篇文章主要介紹了分布式文檔存儲數(shù)據(jù)庫之MongoDB分片集群的問題,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-11-11