CLOVER🍀

That was when it all began.

MongoDBのGUIクライアント、MongoDB Compassを試す

これは、なにをしたくて書いたもの?

MongoDBに対するクライアントツールを探していまして。

Web UI的なものがいいかなぁと思ったのですが、MongoDB自身が提供しているMongoDB Compassが良さそうだったので、
ちょっと試してみました。

MongoDB Compass

MongoDB Compassは、MongoDBの提供するGUIツールです。

ドキュメントは、こちら。

MongoDB Compass

説明はこんな漢字で、MongoDBに格納したドキュメントの管理や検索、ビジュアライズ、インデックスの管理などを行うことが
できます。

MongoDB Compass is the GUI for MongoDB. Compass allows you to analyze and understand the contents of your data without formal knowledge of MongoDB query syntax. In addition to exploring your data in a visual environment, you can also use Compass to optimize query performance, manage indexes, and implement document validation.

RDBMSにあるGUIツールと、そんなに変わらなさそうな雰囲気ですね。

ドキュメントやダウンロードページを見ていると、Windows、macOS、Linux(Debian/Ubuntu、Red Hat Enterprise Linux)に
対応しているようです。

Download and Install Compass

f:id:Kazuhira:20200810154936p:plain

では、早速試してみましょう。

環境

今回の環境について。Ubuntu LInux 18.04 LTSを使います。

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 18.04.5 LTS
Release:    18.04
Codename:   bionic

まずは、接続先のMongoDBから。4.4.0を使用します。

$ mongo --version
MongoDB shell version v4.4.0
Build Info: {
    "version": "4.4.0",
    "gitVersion": "563487e100c4215e2dce98d0af2a6a5a2d67c5cf",
    "openSSLVersion": "OpenSSL 1.1.1  11 Sep 2018",
    "modules": [],
    "allocator": "tcmalloc",
    "environment": {
        "distmod": "ubuntu1804",
        "distarch": "x86_64",
        "target_arch": "x86_64"
    }
}

また、このMongoDBは172.17.0.2というサーバーで動作しているものとします。

MongoDB Compassをインストールする

それでは、まずはMongoDB Compassをインストールします。

Ubuntu Linuxの場合はdebパッケージを使うので、こちらを使ってインストール。

$ curl -O -L https://downloads.mongodb.com/compass/mongodb-compass_1.21.2_amd64.deb
$ sudo dpkg -i mongodb-compass_1.21.2_amd64.deb

そういえば、Linuxの場合はdebかrpmでしかインストールする方法がなく、tar.gzやzipでのインストールはできないんですね。

起動は、「mongodb-compass」で。

$ mongodb-compass &

こんな感じで、GUIが起動します。

f:id:Kazuhira:20200810152842p:plain

f:id:Kazuhira:20200810152923p:plain

「Start Using Compass」を押して、利用開始です。

MongoDB Compassを使ってみる

では、MongoDB Compassを使っていってみましょう。

MongoDBに接続します。

f:id:Kazuhira:20200810153119p:plain

接続方法は、Connection Stringを指定する形になるので、詳細はこちらを参照、ですね。

Connection String URI Format

Connect to MongoDB

主な操作に関するドキュメントは、こちら。

Interact with Your Data

まずは、データベースやコレクションから。

f:id:Kazuhira:20200810153141p:plain

データベースとコレクションを作成してみましょう。

f:id:Kazuhira:20200810153210p:plain

データベースと

f:id:Kazuhira:20200810153229p:plain

コレクションが作成されます。

f:id:Kazuhira:20200810153248p:plain

まだドキュメントは入っていません。

f:id:Kazuhira:20200810153309p:plain

ドキュメントの操作に関するドキュメントは、こちらです。

Manage Documents

最初にドキュメントを登録してみましょう。

Insert Documents

今回は、こんな感じで複数件のドキュメントを登録してみます。

[
  {
    "isbn": "978-4873115900",
    "title": "MongoDBイン・アクション",
    "price": 3740
  },
  {
    "isbn": "978-4798045733",
    "title": "RDB技術者のためのNoSQLガイド",
    "price": 4980
  },
  {
    "isbn": "978-4897978871",
    "title": "NOSQLの基礎知識",
    "price": 2640
  }
]

MongoDB Compass上では、こんな感じで入力します。

f:id:Kazuhira:20200810154144p:plain

登録されました。

f:id:Kazuhira:20200810154204p:plain

ドキュメントの表示に関するドキュメントは、こちら。

View Documents

表示形式を変更することができ、テーブルやJSONの形式でも見ることができます。図は、テーブルの形式です。

f:id:Kazuhira:20200810154243p:plain

最後に、ドキュメントを検索してみましょう。

Query Your Data

こんな感じで、クエリを作成。

{ price: { $gt: 3000 } }

MongoDB Compass上は、FILTERの部分に指定します。

f:id:Kazuhira:20200810154600p:plain

クエリ自体は、MongoDBのドキュメントを参照しましょう。

Query Documents

とまあ、こんな感じで使ってみましたが、けっこう簡単に使えそうで良いですね。

MongoDBを使う時のツールとして、覚えておきましょう。