我尝试在Homebrew上安装之前的MongoDB版本

我在業務中被要求使用mongo_shell。
我們內部有安裝指南,但只適用於Windows系統,所以我決定使用Homebrew進行安裝。
我參考了這篇文章。

更新Homebrew的包裹

$ brew update

安装MongoDB

$ brew install mongodb
Warning: You are using macOS 10.11.
We (and Apple) do not provide support for this old version.
You will encounter build failures with some formulae.
Please create pull requests instead of asking for help on Homebrew's GitHub,
Discourse, Twitter or IRC. You are responsible for resolving any issues you
experience, as you are running this old version.

mongodb: A full installation of Xcode.app 8.3.2 is required to compile this software.
Installing just the Command Line Tools is not sufficient.
Xcode 8.3.2 cannot be installed on macOS 10.11.
You must upgrade your version of macOS.
Error: An unsatisfied requirement failed this build.

哦?
操作系统版本太旧了吗?

是的,我忘了——!!一直以来,一直没有时间重新安排环境,所以一直没有升级操作系统的版本。。。

确认版本

$ sw_vers
ProductName:    Mac OS X
ProductVersion: 10.11.6
BuildVersion:   15G22010

是的,我用的是10.11.6(OS X El Capitan)系统。真是好久以前的版本了。

听说有同事说什么要不要诚实地把操作系统升级到最新的Mojave,好像有个什么Dark Mode什么的。

不行,現在必須盡早從Mongo中提取數據。
因為已經很久沒用Homebrew了,所以試著回想一下。

确认可以安装的Mongodb版本

$ brew search mongodb
==> Formulae
mongodb                                            mongodb@3.0                                        mongodb@3.2                                        mongodb@3.4                                      mongodb@3.6                                        percona-server-mongodb

==> Casks
mongodb                                                      mongodb-compass-community                                    mongodb-compass-readonly                                     nosqlbooster-for-mongodb                                     homebrew/cask-versions/mongodb-compass-beta
mongodb-compass                                              mongodb-compass-isolated-edition                             mongodbpreferencepane                                        orelord-mongodb

哇哇哇,原来有之前的版本!暂时先装上3.6试试看吧!

$ brew install mongodb@3.6
:
:
Error: An unsatisfied requirement failed this build.

嗯,不行了… 落下的更多了。

$ brew install mongodb@3.4
:
:
==> mongodb@3.4

安装成功♪

暫時確定

$ brew list
autoconf    git     go      grep        icu4c       mongodb@3.4     mysql       node        openssl     openssl@1.1 pcre        pkg-config  rbenv       readline    ruby-build  scons       wget

将其添加到路径中

$ echo 'export PATH="/usr/local/opt/mongodb@3.4/bin:$PATH"' >> ~/.bashrc
$ source ~/.bash_profile

确定它会动

$ mongo
MongoDB shell version v3.4.18
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.18
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
    http://docs.mongodb.org/
Questions? Try the support group
    http://groups.google.com/group/mongodb-user
Server has startup warnings:
2019-02-06T12:50:07.069+0900 I CONTROL  [initandlisten]
2019-02-06T12:50:07.069+0900 I CONTROL  [initandlisten] ** WARNING: Access control is not enabled for the database.
2019-02-06T12:50:07.069+0900 I CONTROL  [initandlisten] **          Read and write access to data and configuration is unrestricted.
2019-02-06T12:50:07.069+0900 I CONTROL  [initandlisten]
>

什么都能动起来了!尝试在工作中使用一下看看。

WARNING: shell and server versions do not match

儘管出現了警告,但已能提取所需的資料。
暫時先這樣應付,盡快提升作業系統。

本次教訓

    • 仕事にかまけて開発環境のメンテをおろそかにしていると痛い目を見る

 

    意外となんとかなる(こともある)のでやれることはやってみる
广告
将在 10 秒后关闭
bannerAds