mongoshとは?初心者でも分かる使い方ガイド共起語・同意語・対義語も併せて解説!

  • このエントリーをはてなブックマークに追加
mongoshとは?初心者でも分かる使い方ガイド共起語・同意語・対義語も併せて解説!
この記事を書いた人

高岡智則

年齢:33歳 性別:男性 職業:Webディレクター(兼ライティング・SNS運用担当) 居住地:東京都杉並区・永福町の1LDKマンション 出身地:神奈川県川崎市 身長:176cm 体系:細身〜普通(最近ちょっとお腹が気になる) 血液型:A型 誕生日:1992年11月20日 最終学歴:明治大学・情報コミュニケーション学部卒 通勤:京王井の頭線で渋谷まで(通勤20分) 家族構成:一人暮らし、実家には両親と2歳下の妹 恋愛事情:独身。彼女は2年いない(本人は「忙しいだけ」と言い張る)


mongoshとは

mongosh は MongoDB の公式の新しいコマンドラインシェルです。昔の mongo シェルに代わるツールとして開発され、JavaScript の実行環境が整っていて使い勝手が向上しています。このツールを使うとデータベースの操作やデータの読み書きがコマンドラインから直感的に行えます。

まず押さえておきたいのは mongosh は別のアプリケーションとして提供されている という点です。古い mongo シェルは別のパッケージでしたが mongosh は独立してダウンロードできます。接続先は自分のローカルのデータベースでもクラウド上の MongoDB でもかまいません。

使い方の流れ

開始の基本は次の3つです。1つずつ順番に覚えれば大丈夫です。

1. ダウンロードとインストール。環境に合った方法を選ぶことが大切です。Windows なら公式サイトのインストーラ、macOS なら Homebrew のコマンド、Linux なら apt や yum などがあります。

2. 起動と接続。mongosh コマンドを実行すると対話モードになります。接続先を指定する場合は mongosh が起動した後に接続文字列を入力します。例として localhost の場合は特に指定不要なことが多いです。

3. 基本操作の練習。データベースの選択やコレクションの参照は下の例のように行います。db オブジェクトを使いこなすとデータの操作が楽になります。

基本的なコマンドの例

以下は mongosh でよく使う基本コマンドの例です。中学生でも読みやすい日本語で解説します。

コマンド意味と使い方
mongosh対話モードを起動します
use データベース名対象のデータベースを選択します
db現在選択中のデータベースを表示します
db.コレクション.find({})コレクション内のデータを検索します
db.コレクション.insertOne({名前: 例})新しいデータを追加します

mongosh と mongo シェルの違い

古い mongo シェルと比べて mongosh はいくつかの点で使いやすくなっています。モダンな JavaScript 環境 が用意されておりエラーメッセージがわかりやすいことや、補助的なツールのサポートが充実している点が魅力です。自動補完機能 やコマンド履歴の扱いも改善されています。

まとめと次のステップ

mongosh は MongoDB を使うときの公式ツールです。まずは自分のパソコンに mongosh を導入し、簡単なデータの読み書きから練習してみましょう。慣れてきたら実際のデータベースに接続して複雑な検索や集計も挑戦してみてください。

用語の解説

コマンドライ とはコンピュータと対話するための文字列を入力する画面のこと
コネクション文字列 mongodb:// から始まる接続情報のことです

mongoshの同意語

MongoDBシェル
MongoDBと対話するためのコマンドラインツール。クエリの実行、データの閲覧・更新、データベース管理を対話形式で行います。現在は mongosh が推奨される公式シェルです。
Mongo Shell
MongoDBの対話型シェルを指す英語表現。操作は同様にコマンド入力でMongoDBへ指示を送ります。
Mongoシェル
日本語圏で使われる MongoDB の対話型シェルの略称。mongosh と同じ機能を持つツールを指します。
mongoシェル
旧来の MongoDB シェルの呼称。以前はこれが標準でしたが、現在は mongosh が推奨されます。
旧MongoDBシェル (mongo)
過去に広く使われていた MongoDB のシェル。現在は新しい mongosh へ移行が進んでいます。
mongosh
MongoDB の新しい対話型シェルの名称。公式ツールとして、MongoDB へ対話的にコマンドを送るために使われます。
MongoDBコマンドラインシェル
MongoDBをコマンドライン上で操作するためのシェルの総称。mongoshと同義で使われることがあります。
MongoDB対話型CLI
MongoDB を対話形式で操作するCLIで、mongosh を指す場面が多い表現です。
MongoDBのCLIツール
MongoDB をコマンドラインから操作するツールの総称。mongosh を含むことがあります。

mongoshの対義語・反対語

GUIクライアント
コマンドラインの mongosh に対して、グラフィカルなユーザーインターフェイスを使ってデータベースを操作するツール。クエリの作成・実行やデータ閲覧を視覚的に行える点が対義語となります。
SQLクライアント
SQLベースでデータベースとやり取りするツール。mongosh は JavaScript ベースの NoSQL MongoDB 用シェルなので、言語とデータモデルが異なる点が反対のイメージです。
psql
PostgreSQL の対話型シェル。SQLを使い、JavaScript ではなく SQL で操作する点が mongosh とは対極の体験。
MongoDB Compass
MongoDB の公式 GUI 管理ツール。CLI の mongosh に対して、GUI での操作を重視する対義的ツールです。
Robo 3T
MongoDB 向けの GUI クライアント。コマンド入力より視覚的操作を優先する点が対になるイメージ。
Studio 3T
MongoDB 用の GUI クライアント。視覚的なデータ操作が可能で、mongosh の CLI 体験とは異なる対義語として挙げられます。
SQLシェル
SQL を使う対話型シェル。mongosh は JavaScript ベースで MongoDB を扱うため、言語と想定するデータモデルが異なる点が反対のイメージです。
GUIツール全般
コマンドラインを使わず、グラフィカルユーザーインターフェイスでデータベースを操作するツール群。mongosh の対比として示せます。

mongoshの共起語

mongosh
MongoDBの対話型シェル。JavaScriptでMongoDBデータの操作や管理を実行するツール。
MongoDB
データベースシステム。mongoshはこのデータを対話的に操作するためのツール。
mongod
MongoDBのサーバー(データベースエンジン)プロセス。mongoshは接続してコマンドを送る相手。
db
現在選択されているデータベースを表すグローバルオブジェクト。db.collectionNameで操作する。
collection
データを格納するための枠組み、dbの下に作成され、各ドキュメントはJSON風の形式。
find
データを検索する代表的な操作。findは複数件を返し、条件に合致するドキュメントを取得します。
findOne
条件に一致する1件のドキュメントを返す検索操作。
insertOne
1件のドキュメントをコレクションに追加します。
insertMany
複数のドキュメントを一度にコレクションに追加します。
updateOne
条件に一致する1件のドキュメントを更新します。
updateMany
条件に一致する複数件のドキュメントをまとめて更新します。
deleteOne
条件に一致する1件のドキュメントを削除します。
deleteMany
条件に一致する複数件のドキュメントを削除します。
ObjectId
ドキュメントのデフォルトIDとして使われる12バイトの識別子。
BSON
MongoDBの内部データ形式。JSONに似た構造だがバイナリ表現を含みます。
JSON
外部へ表示・通信されるデータ形式。mongoshの出力はJSON風に表示されます。
MQL (MongoDB Query Language)
MongoDBのクエリ記述言語。mongoshでdb.collection.find({ ... })のように使います。
Aggregate
データを集計する機能。複数のステージでデータを加工する集計パイプラインを使います。
aggregation pipeline
集計処理の手順を連ねたパイプライン。各ステージでデータを変換します。
Index
検索を高速化するためのデータ構造。適切なインデックスでクエリ性能を向上させます。
Atlas
MongoDBのクラウドサービス。mongoshはAtlasクラスタへ接続してデータを操作できます。
Connection URI
データベースへ接続する際のURL形式の文字列。mongodb:// や mongodb+srv:// が主になります。
Replica Set
同一データを複数のサーバに分散して可用性を高める構成。
Shell
対話型のコマンドラインツールとしての性質。mongoshはシェルの1例です。
Authentication
接続時の認証情報。ユーザー名とパスワード、ロールで権限を管理します。
TLS/SSL
通信を暗号化して安全に接続するセキュリティ設定。

mongoshの関連用語

mongosh
MongoDBの公式現代的なシェル。Node.js上で動作し、JavaScriptを使ってMongoDBに対するコマンドを実行できる対話型環境。
MongoDB
ドキュメント指向のNoSQLデータベース。JSON風のBSONドキュメントでデータを格納し、柔軟なスキーマを特徴とする。
mongo
従来のMongoDBシェル。mongoshの前任となるシェルで、今は新機能は限定的。
MongoDB Atlas
クラウド上のMongoDBサービス。自動的なスケーリング・バックアップ・セキュリティ機能を提供。
MongoDB Compass
GUIツール。データの閲覧・クエリ作成・インデックス設計を視覚的に行える。
MongoDB Driver
各言語向けの公式ライブラリ。アプリケーションからMongoDBへ接続してデータ操作を行う。
REPL
対話型の実行環境。入力を評価して結果を返すループ処理のこと。
JavaScript
mongoshはJavaScriptでコマンドを記述する。配列・オブジェクトの取り扱いなどJSの機能を利用できる。
BSON
Binary JSON。MongoDBが内部で使用するデータ形式。日付・オブジェクトIDなどの型も含む。
ObjectId
ドキュメントの一意識別子として自動生成される24文字の16進ID。
ISODate
ISO 8601準拠の日付を表す型。Shellで日付を扱う補助的な表現。
Timestamp
特定のイベント時刻を表す特殊な型。レプリケーションなどで用いられる。
db
現在操作しているデータベースを参照するグローバルオブジェクト
collection
同じ種類のドキュメントを格納する集合。
find
ドキュメントを検索する基本的なクエリ操作。
insertOne
1件のドキュメントを挿入する操作。
insertMany
複数件のドキュメントを一度に挿入する操作。
updateOne
1件のドキュメントを更新する操作。
updateMany
条件に一致する複数件を更新する操作。
deleteOne
1件のドキュメントを削除する操作。
deleteMany
条件に一致する複数件を削除する操作。
projection
取得するフィールドを絞るクエリの一部。
sort
結果の並び替えを指定する操作。
limit
返すドキュメント数を制限する操作。
skip
結果の先頭からスキップする操作。
aggregation pipeline
データを段階的に加工・集計する処理の連結。
$match
パイプラインの前段で条件に一致するドキュメントを絞り込むステージ。
$group
ドキュメントをグループ化して集計するステージ。
$project
出力ドキュメントの形を変えるステージ
$sort
グループ化後の順序を決めるステージ。
$limit
パイプラインの結果数を制限するステージ。
$skip
パイプラインの結果をスキップするステージ。
$lookup
別コレクションと結合するステージ。
$unwind
配列を々のドキュメントに展開するステージ。
$addFields
新しいフィールドを追加するステージ。
$set
フィールドを設定・更新する同義のステージ。
$count
ドキュメント数を返すステージ。
$out
集計結果を別のコレクションにき出すステージ。
$merge
集計結果を既存のコレクションへ統合するステージ。
cursor
クエリの結果を順次参照するカーソル
toArray
カーソルの全ドキュメントを配列として取得する方法。
next
カーソルの次のドキュメントを取得する方法。
bulkWrite
複数の書き込み操作を一括して実行する機能。
transactions
複数の書き込みを原子に実行する機能。
startSession
トランザクションを開始するためのセッションを開始する。
withTransaction
セッション内でトランザクションを実行する高階関数的な方法。
readConcern
読み取りの一貫性・可用性の設定。
writeConcern
書き込みの耐障害性・確認レベルの設定。
authentication
ユーザー認証の仕組み。
SCRAM-SHA-256
MongoDBで使われる代表的な認証メカニズムの一つ。
connection string
データベースへ接続するためのURI。
mongodb://
従来の接続スキーム
mongodb+srv://
クラウド用の簡略化接続スキーム。
SSL/TLS
通信の暗号化
index
検索を速くするデータ構造。
explain
クエリの実行計画を表示して性能を分析。
profile
データベース操作の統計情報を収集する機能。
pretty
出力を整形して見やすく表示する機能。
mongoshの特徴
現代的なES6対応のNodeベースのシェル。補完・エラーメッセージ改善など。
CLI / Shell
コマンドラインインターフェイスとしての使い勝手。
SSH / VPN
リモートのMongoDBへ安全に接続する手段。

mongoshのおすすめ参考サイト


インターネット・コンピュータの人気記事

awstatsとは?初心者でもわかる使い方と基本解説共起語・同意語・対義語も併せて解説!
15591viws
bing・とは?初心者のための基本ガイド:検索エンジンの仕組みと使い方共起語・同意語・対義語も併せて解説!
2496viws
着信転送とは?初心者向けガイドで分かる使い方と設定のコツ共起語・同意語・対義語も併せて解説!
1117viws
差し込み印刷・とは?初心者でもすぐわかる使い方と仕組みガイド共起語・同意語・対義語も併せて解説!
1096viws
com端子・とは?初心者にも分かる基礎ガイド|シリアルポートの使い方と歴史を解説共起語・同意語・対義語も併せて解説!
988viws
充電アダプターとは何かを徹底解説|初心者でも分かる基本と選び方のコツ共起語・同意語・対義語も併せて解説!
940viws
7zファイル・とは?初心者でもわかる使い方と特徴を解説共起語・同意語・対義語も併せて解説!
902viws
全角文字とは?初心者向け解説|全角と半角の違いをやさしく学ぶ共起語・同意語・対義語も併せて解説!
894viws
リマインドメールとは?初心者にもわかる基本ガイドと使い方のコツ共起語・同意語・対義語も併せて解説!
829viws
pinロックとは?初心者が知っておくべき基本と使い方ガイド共起語・同意語・対義語も併せて解説!
828viws
none とは?初心者にもやさしく解説する意味と使い方ガイド共起語・同意語・対義語も併せて解説!
757viws
16進数カラーコード・とは?初心者でもつまずかない基礎と使い方ガイド共起語・同意語・対義語も併せて解説!
751viws
ローカルポート・とは?初心者にも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
650viws
xlsmとは?初心者でも分かるExcelのマクロ付きファイルの基本共起語・同意語・対義語も併せて解説!
647viws
asp・とは?初心者向けに徹底解説する基本と使い方ガイド共起語・同意語・対義語も併せて解説!
644viws
countifとは?初心者でもすぐ使える基本と応用ガイド共起語・同意語・対義語も併せて解説!
578viws
ワンタイムコード・とは?初心者でも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
563viws
sha256とは?初心者が知るべき暗号ハッシュの基礎と使い道共起語・同意語・対義語も併せて解説!
550viws
csvダウンロードとは?初心者が今すぐ使える基本ガイド共起語・同意語・対義語も併せて解説!
542viws
googleドキュメントとは?初心者が今日から使いこなす基本ガイド共起語・同意語・対義語も併せて解説!
500viws

新着記事

インターネット・コンピュータの関連記事