修复 Mac brew 安装 mongodb 报 Error: No available formula with the name ‘mongodb’ 问题详解

根据 homebrew-brew 官方的解释得知,MongoDB 不再是开源的了,并且已经从 Homebrew中移除 #43770

正是由于 MongoDB 的商业化不太理想,所以它选择了闭源。所以,在它闭源之前的那些 brew 安装方法都会报错了。网上很多的文章都是基于以前古老的安装方式,这种方式导致 brew 无法安装,报错。

Error: No available formula with the name ‘mongodb'

新的安装方式可以参考 github 主页,https://github.com/mongodb/homebrew-brew。

新的安装方式告诉我们,需要先执行:

brew tap mongodb/brew

接着在执行:

brew install mongodb-community

这是安装的社区版的。如果需要安装指定版本的,可以带上 @版本号。

brew install mongodb-community@4.2

brew install mongodb-community@4.0

brew install mongodb-community@3.6

如果仅想安装最新的 mongoshell,则可以执行下面的命令。

brew install mongodb-community-shell

如果出现 Download failed 或 DownloadError: Failed to download resource “mongodb-community” 错误,则重复执行安装命令,进行下载。这属于你的网络问题,多尝试几次。

安装后的默认配置文件路径如下:

#配置文件:/usr/local/etc/mongod.conf

#日志目录路径:/usr/local/var/log/mongodb

#数据目录路径:/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 裸奔,这些年出了不少泄露数据的事故,我们得配置一下安全认证。

首先,我们启动 mongo 成功后,执行下面的命令:

#链接 mongo
mongo

#切换db,或创建 xttblog
use xttblog

#创建用户admin
db.createUser({
	user:'admin',
	pwd:'admin',
	roles:[{role:'readWrite',db:'xttblog'}]
})

如果创建成功,则提示:Successfully added user。

Successfully added user: {
	"user" : "admin",
	"roles" : [
		{
			"role" : "readWrite",
			"db" : "xttblog"
		}
	]
}

角色设置需要注意,userAdminAnyDatabase 之类的默认没有了,可以通过 show roles 命令查看角色。

#查看角色
show roles

#查看用户
show users

如果要修改用户角色,则可以执行 db.updateUser 命令。

db.updateUser(
	"admin",
	{
		roles:[
			{role:"readWrite",db:"xttblog"},
			{role:"userAdmin",db:"xttblog"},
			{role:"dbAdmin",db:"xttblog"}
		]
	}
)

操作完成后,我们就可以修改 mongo 的配置文件了,开启认证。

vi /usr/local/etc/mongod.conf

在文件最后加入:“#开启权限校验”之后的配置。

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
# 开启权限校验
security:
 authorization: enabled

重启服务。再次操作 mongo 就需要进行认证了。

mongo
use xttblog
db.auth("xttblog","xttblog")

同样的 SpringBoot 整合 Mongo 的 url 就得配置上密码认证了。

mongodb://admin:admin@localhost:27017/xttblog

至此MongoDB安装完成,更多关于安装 mongodb 报错的问题请查看下面的相关链接

(0)

相关推荐

  • mongodb错误tcmalloc: large alloc out of memory, printing stack and exiting解决办法

    最近Mongodb会经常突然挂掉,检查日志发现如下的错误: 复制代码 代码如下: tcmalloc: large alloc 2061584302080 bytes == (nil) @ Tue Nov 26 17:45:04.539 out of memory, printing stack and exiting: 0xdddd81 0x6cfb4e 0x121021d 0xafcc1f 0xaf815f 0xaf8d1d 0xaf8e0f 0xaf52ae 0xaf53c9 0xb1eb1

  • 解决启动MongoDB错误:error while loading shared libraries: libstdc++.so.6:cannot open shared object file:

    启动MongoDB时,提示: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory [root@SnsWeb ~]# /usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data --logpath /usr/local/mongodb/logs/mongodb.l

  • MongoDb的"not master and slaveok=false"错误及解决方法

    使用mongodb时,出现"not master and slaveok=false"错误,原因是secondary不允许读写. 因为系统中mongodb做了主备,主备切换了,也可能导致这个问题. 把命令mongo --username=root --password=123456  --host=192.168.0.100  admin中的ip换成主ip后查询正常. 问题说明: 首先这是正常的,因为SECONDARY是不允许读写的, 在写多读少的应用中,使用Replica Sets来

  • 关于Mongodb参数说明与常见错误处理的总结

    本文主要介绍的是关于Mongodb参数说明与常见错误处理的相关内容,分享出来供大家参考学习,下面来一起看看详细的介绍: 一.在 CentOS7 上安装 MongoDB 1 通过 SecureCRT 连接至 CentOS7 服务器: 2 进入到 /usr/local/ 目录: cd /usr/local 3 在当前目录下创建 tools 目录: mkdir -p tools 4 进入到 tools 目录中: cd tools 5 下载与 CentOS 系统匹配的 mongodb-linux-x86

  • 解决mongodb在ubuntu下启动失败,提示couldn‘t remove fs lock errno:9 Bad file descriptor的错误

    按照官网上的安装方法: 在ubuntu系统下有可能出现如下错误: couldn't remove fs lock errno:9 Bad file descriptor 此时需要修改文件所有者 $ sudo mkdir -p /data/db/ $ sudo chown 'USERNAME' /data/db 其中第一句是建立你的数据库文件夹,第二句修改该文件夹的所有者 之后就可以成功启动mongodb了 参考:stackoverflow.com/questions/15229412/unabl

  • Mongodb常见错误与解决方法小结(Mongodb中经常出现的错误)

    今天在配置MongoDB时发生了以下几个错误, 已经被我解决了,提供给大家. 2015-05-12T09:30:26.313+0800 I STORAGE [initandlisten] exception in initAndListen: 28574 Cannot start server. Detected data files in /root/Desktop/mongodb/data created by storage engine 'mmapv1'. The configured

  • MongoDB错误32-bit servers don't have journaling enabled by default解决方法

    每次启动MongoDB时总是会收到如下 Unclean shutdown 提示,总结了一下出现该问题的原因及解决方法. 提示如下: 复制代码 代码如下: ************** D:\GREENT~1\PowerCmd>mongod --auth -dbpath C:\mongo\MongoDB\mongo\data Wed May 16 16:06:50 Wed May 16 16:06:50 warning: 32-bit servers don't have journaling e

  • 修复 Mac brew 安装 mongodb 报 Error: No available formula with the name ‘mongodb’ 问题详解

    根据 homebrew-brew 官方的解释得知,MongoDB 不再是开源的了,并且已经从 Homebrew中移除 #43770 正是由于 MongoDB 的商业化不太理想,所以它选择了闭源.所以,在它闭源之前的那些 brew 安装方法都会报错了.网上很多的文章都是基于以前古老的安装方式,这种方式导致 brew 无法安装,报错. Error: No available formula with the name 'mongodb' 新的安装方式可以参考 github 主页,https://gi

  • CentOS 7.2 下编译安装PHP7.0.10+MySQL5.7.14+Nginx1.10.1的方法详解(mini版本)

    一.安装前的准备工作 1.yum update #更新系统 2.yum install gcc gcc-c++ autoconf automake cmake bison m4 libxml2 libxml2-devel libcurl-devel libjpeg-devel libpng-devel libicu-devel #安装php.MySQL.Nngix所依赖的包 3.下载以下包 #我把所有源文件都下载在root目录,读者可自行修改源文件存放目录 3.1 libmcrypt-2.5.8

  • 安装node.js以及搭建vue项目过程中遇到的问题详解

    目录 一.node.js安装 二.如何找node.js历史版本 1.点击DOWNLOADS 2.点击页面下方 3.翻页找到历史版本 三.检查是否安装成功? 四.安装成功后需要配置环境变量: 五.环境搭建 六.项目创建 总结 一.node.js安装 进入官网 https://nodejs.org/en/download/ 直接点击下载安装!安装过程直接下一步就行: 二.如何找node.js历史版本 (https://nodejs.org/en/download/) 1.点击DOWNLOADS 2.

  • Mongodb 3.2.9开启用户权限认证问题的步骤详解

    前言 大家在Mongodb安装好后,一般不需要用户名密码就可以直接使用,开发者认为只要使用环境足够安全,可以不使用认证,但是在实际使用中为了数据的安全,大多人还是选择了开启权限认证. 一.在老版的Mongodb(大概3.0以前)可以这样开启认证: 1.Linux环境下mongo shell方式认证: >show dbs ##看到有如下数据 admin (empty) comment 0.203125GB dbtest (empty) foo 0.203125GB local (empty) te

  • MongoDB中数据的替换方法实现类Replace()函数功能详解

    近日接到一个开发需求,因业务调整,需要DBA协助,将MongoDB数据库中某集合的进行替换.例如我们需要将集合A中B字段中,有关<美好>的字符替换为 <非常美好>.个人感觉这个需求如果是在SQL Server 或MySQL 数据库上处理是小菜一碟,如果是针对MongoDB数据,可能要费神了. 1.常见关系数据数据库中的替换函数 在SQL Server数据库中,我们用Replace函数来实现字符的替换. 语法 REPLACE ( ''string_replace1'' , ''str

  • MongoDB开启权限认证的方法步骤详解

    前言 最近在生产环境中MongoDB已经使用有一段时间了,但对于MongoDB的数据存储一直没有使用到权限访问(MongoDB默认设置为无权限访问限制),最近在酷壳网看了一篇技术文章(https://coolshell.cn/?s=从+MONGODB+"赎金事件"+看安全问题&from=timeline&isappinstalled=0)介绍的mongodb未开启权限认证导致数据被黑客窃取,要比特币赎回的事件,考虑到数据安全的原因特地花了一点时间研究了一下,我现在用的版

  • 详解python3安装pillow后报错没有pillow模块以及没有PIL模块问题解决

    也许自己真的就是有手残的毛病,你说好端端的环境配置好了,自己还在那里瞎鼓捣,我最不想看到的就是在安装一个别的模块的时候,自动卸载了本地的其他模块,每每这个时候,满满的崩溃啊,今天就是一个鲜活的例子. 我们都知道由于2和3版本的差异,2中的PIL模块可以直接安装和导入使用,3中需要安装的实际是Pillow模块,导入的却是PIL模块,我在安装别的模块的时候居然自动地把我本机安装好的Pillow模块卸载了,导致我后面使用的时候一直报错,想着直接再安装一下就行了,却发现事情真的是一团糟. python

  • mac下使用brew 安装mongodb的方法教程

    mac 系统常用的软件安装工具就是 homebrew 个人认为通过brew安装比较简单,下面介绍下如何安装 安装 mongodb wenxuezhangdeMacBook-Pro:~ wenxuezhang$ brew install mongodb 此图说明已经安装成功,安装的目录就是 /usr/local/Cellar/mongodb/3.2.9 第一次启动服务端,这里需要做一些准备工作. 默认mongodb 数据文件是放到根目录 data/db 文件夹下,如果没有这个文件,请自行创建. w

  • Mac中mongoDB的安装与卸载步骤详解

    前言 MongoDB 是一个基于分布式文件存储的数据库,旨在为 web 应用提供可扩展的高性能数据存储解决方案.本文主要介绍的是关于在mac中安装卸载mongoDB数据库的方法,更多关于mongoDB的使用大家可以参考这篇文章:http://www.jb51.net/article/79416.htm (一) mongodb 安装 mongodb 数据库的安装有两种方法. 一种是使用命令行安装,第二种是使用HomeBrew 安装,我按照第二种方式安装. 1.更新Homebrew的package数

  • mac下安装和配置mongodb的步骤详解

    MongoDB是什么 MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案. 他的特点:高性能.易部署.易使用,存储数据非常方便. 本文主要给大家介绍了在mac下安装和配置mongodb的步骤,分享出来供大家参考学习,下面话不多说,来一起看看详细的介绍: 备注:本文相关源码可在文末下载! 安装 mongodb install 之前,iTerm2 下用 brew 查看已安装软件.搜索 mongodb: brew list brew s

随机推荐