【Windows】RDBMS歴が長い人でも大丈夫!MongoDB超入門

【Windows】RDBMS歴が長い人でも大丈夫!MongoDB超入門

ITの勉強を始めたみなさんはもちろん、リレーショナルデータベース管理システム(RDBMS)に慣れたベテランでも、NoSQLについて勉強するのは勝手が違い、いささか不安ではないでしょうか。しかしNoSQLのなかでも注目度が高いMongoDBは、RDBMSと似た部分があり、データベースの基本を理解しているのなら比較的わかりやすいとの声があります。

いまさら聞けないMongoDBのことを、概要からインストール方法までご紹介します。

目次
  1. MongoDB概要
  2. ドキュメント指向
  3. 高速だがトランザクション機能がない
  4. SQL不要
  5. MongoDBインストール~起動
  6. 実行ファイルをダウンロード
  7. インストール
  8. Pathに実行ファイルの場所を設定
  9. データファイルの場所、ログファイルの保管場所を作成
  10. MongoDB起動
  11. データベース作成~削除
  12. データベース作成
  13. データ挿入、確認
  14. データ更新
  15. データ削除
  16. コレクション削除
  17. データベース削除
  18. MongoDB終了
  19. おわりに

MongoDB概要

MongoDBはNoSQLに分類されるデータベースです。NoSQLにはキー・バリュー型、列指向などのタイプがあり、MongoDBはそのうちのドキュメント指向データベースです。大量で、複雑な構造のデータを高速に処理するための設計が施されています。

特徴は次の通りです。

ドキュメント指向

RDBMSではデータ構造を事前に綿密に設計する、いわゆるスキーマ定義を行う必要があります。NoSQLでは厳密なスキーマ定義を行う必要はなく、データ構造の変更に柔軟に対応できるような仕組みになっています。

MongoDBではドキュメントというデータ構造を用い、コレクションというデータの集合体に保管します。

高速だがトランザクション機能がない

メモリ上でデータを処理するインメモリや、データを複数のサーバに分散するシャーディングを実現しており、大量・高速に設計の重点を置いています。その反面、一定の期間を経て整合性が取れる結果整合性を採用しており、RDBMSのようなトランザクション機能はありません。

SQL不要

コレクションにはSQLでアクセスする必要がなく、MongoDB独自のメソッドを用います。

MongoDBインストール~起動

それでは実際にインストールからデータ操作までを行ってみましょう。

※画像はWindows 10、MongoDB 3.2.5のものです。

実行ファイルをダウンロード

公式サイトにて、赤枠のボタンをクリック。

install1

開発環境に合わせた実行ファイルをダウンロードします。

install2

インストール

ダウンロードしたファイルを実行し、インストーラーに従ってインストールします。特に変更する箇所はありません。

Pathに実行ファイルの場所を設定

mongod.exeがデータベースサーバの実行ファイル、mongo.exeがクライアントの実行ファイルです。いずれもデフォルトの設定では

C:\ProgramFiles\MongoDB\Server\3.2\bin

に保管されています。この値をPathに追加します。

コントロールパネル>システムで、「システムの詳細設定」をクリック。

system

詳細設定タブの環境変数をクリック。

set_path

Pathを選択して編集ボタンをクリック。

kankyohensu

新規ボタンをクリックし、Pathに”C:\ProgramFiles\MongoDB\Server\3.2\bin”を追加します。

path_shinki

データファイルの場所、ログファイルの保管場所を作成

起動に必要なデータファイル、ログファイルを保管するフォルダを作成します。

今回は

データファイルの保管場所:c:\mongodb\data
ログファイルの保管場所:c:\mongodb\logs

とします。

MongoDB起動

コマンドプロンプトを起動し、下記を入力します。

mongod --dbpath c:\mongodb\data --logpath c:\mongodb\logs\mongodb.log**<code>mongod --dbpath c:\mongodb\data --logpath c:\mongodb\logs\mongodb.log

DBopen

特に実行結果は返ってきませんが、起動しています。コマンドプロンプトを閉じると終了するので、ウィンドウを開いたままにしましょう。

クライアントとして、もう1つコマンドプロンプトを起動し、下記を入力します。

mongo

DBopen_testJPG

以下こちらのコマンドプロンプトで操作します。

データベース作成~削除

MongoDBではコレクションを保管する場所がデータベースです。

データベース作成

まずデータベースを作成します。

[例]use testDB

UseDBJPG

useというコマンドではありますが、testDBというデータベースが作成され、このデータベース上で操作する状態になっています。

db.stats()

で、データベース内部の情報を見ることができます。

データ挿入、確認

データ操作にはメソッドを使います。 db.testCollection.insert({ name:"Suzuki",age:"27"})

insert

db.testCollection.find()

コレクション内の全てのデータを確認します。上記の例では先ほど挿入したデータが表示されました。

データ更新

db.testCollection.update({ name:"Suzuki"},{age:"25"})

update

データ削除

db.testCollection.remove({})

remove

コレクション内の全てのデータが削除されました。

コレクション削除

db.testCollection.drop()

collection_drop

testCollectionコレクションが削除されました。

データベース削除

db.dropDatabase()

drop

testDBデータベースが削除されました。

show dbs

でデータベース一覧が表示されます。testDBというデータベースがないことがわかります。

MongoDB終了

クライアント側(mongoを実行中のコマンドプロンプト)は

quit()

で終了します。

MongoDB(mongodを実行中のコマンドプロンプト)はCtrl+Cで終了します。

おわりに

ここまで触れてみて、概要はつかめたのではないかと思います。次の記事では操作についてもう少し詳しくご紹介します。

murase miho
ライター
murase miho

関連記事