MongoDB
 Computer >> コンピューター >  >> プログラミング >> MongoDB

【MongoDB】「show dbs」と「show databases」の違いは?データベース一覧表示コマンドを解説

結論:2つのコマンドに違いはない

MongoDBのシェル(mongosh)では、サーバー上に存在するデータベースの一覧を表示するために、show dbsshow databases という2つのコマンドを使用できます。結論から言うと、この2つには機能上の違いは一切ありません。どちらのコマンドも内部的には同じ listDatabases コマンドを呼び出しているため、実行結果も完全に同一になります。

どちらを使うかは単なる好みの問題です。短く入力したいなら show dbs、より明示的に書きたいなら show databases を選ぶとよいでしょう。

show dbs の実行例

> show dbs

実行すると、存在するデータベース名とそれぞれのおおよそのサイズが表示されます。

admin                0.002GB
app                  0.000GB
business             0.000GB
config               0.000GB
local                0.000GB
main                 0.000GB
my                   0.001GB
ok                   0.001GB
sample               0.003GB
sampleDemo           0.000GB
studentSearch        0.000GB
test                 0.034GB
university           0.000GB
web                  0.003GB
webcustomertracker   0.000GB

show databases の実行例

> show databases

show databases を実行しても、出力内容はまったく同じです。

admin                0.002GB
app                  0.000GB
business             0.000GB
config               0.000GB
local                0.000GB
main                 0.000GB
my                   0.001GB
ok                   0.001GB
sample               0.003GB
sampleDemo           0.000GB
studentSearch        0.000GB
test                 0.034GB
university           0.000GB
web                  0.003GB
webcustomertracker   0.000GB

補足:listDatabases を直接実行して詳細を取得する

表示されているサイズは概算値です。より正確な情報が必要な場合は、シェルヘルパーの代わりに listDatabases コマンドを直接実行できます。

db.adminCommand({ listDatabases: 1 })

この方法では、各データベースのサイズがバイト単位の詳細な数値で返されます。nameOnly: true オプションを指定すれば、サイズ情報を省いてデータベース名のみを取得することも可能です。

注意点:空のデータベースは表示されないことがある

show dbsshow databases の一覧には、ドキュメントを1件も含んでいない空のデータベースが表示されない場合があります。「作成したはずのデータベースが見当たらない」ときは、まず何らかのデータを書き込んでから再確認してみてください。

  1. C#と.NETの違いをわかりやすく解説!言語とフレームワークの関係

    C#と.NETの基本的な違いC#(シーシャープ)はマイクロソフトが開発したプログラミング言語であり、一方の.NET(ドットネット)はアプリケーション開発を支援するフレームワークです。この2つは密接な関係にありますが、それぞれの役割はまったく異なります。.NETの中核となる「共通言語ランタイム(CLR)」.NETには「共通言語ランタイム(CLR:Common Language Runtime)」と呼ばれる仮想的な実行環境が組み込まれています。CLRはメモリ管理、例外処理、セキュリティなどを担当し、.NET上で動作するすべてのアプリケーションの土台となる重要なコンポーネントです。C#だけじゃない!

  2. GoとJavaの違いを徹底比較!特徴と使い分けのポイント

    プログラミング言語を選ぶ際、「Go」と「Java」のどちらを採用すべきか迷う開発者は少なくありません。どちらもGoogleや企業システムで広く使われる人気言語ですが、設計思想や言語仕様には大きな違いがあります。本記事では、それぞれの言語の特徴を解説したうえで、両者の主な違いを比較表を使ってわかりやすく整理します。 GoとはGoはGoogleが開発した手続き型(プロシージャル)プログラミング言語です。プログラムはパッケージ単位で構成され、シンプルで読みやすいコード記述を重視した設計になっています。動的言語に近い柔軟なパターンを取り入れつつ、静的型付けによる安全性も兼ね備えています。また、軽量スレ