MongoDBをMacOSで使えるようにするまで

こんにちは。今回は、MacOSでMongoDBを使えるようにする話です。

Mongo DB、昔少し触ったけれど、前回記事のTwitterデータ分析のように、最近外部から取得したテキストデータを分析することが増えてきたため、何かしらこれらのテキストデータをためておく方法はないかなと思ったところで、ドキュメントデータベースである、Mongo DBが再浮上してきたわけであります。

色々忘れてしまったところも多いので、改めて、備忘も兼ねてその手順を残しておこうと思います。

誤っているところがあればご指摘いただけると勉強になります・・!

Mongo DBの基本情報
  • 2009年に初版が公開された、オープンソースのドキュメント指向データベース
  • OracleDBやMySQL等のRDB(リレーショナルデータベース)とは異なる、NoSQL(Not Only SQL)に分類される
  • 2018年10月16日より、商用利用の制限が厳しいSSPLライセンスに移行された。一般開発者が無償版で利用できるのはMongoDB Community版
Mongo DB公式ページ

インストール手順

今回はパッケージ管理ソフトであるbrewを利用したインストール手順になります。

brew tap mongodb/brew
brew install mongodb-community
brew tap
brew install

これでインストールは完了です。

インストールが完了していることを確認するため、以下コマンドを打ちます。バージョン情報が表示されたら正常にインストールされています。

mongod -version

なんとこれだけでインストールは終了。

MongoDBの設定確認

はじめに、ログファイルや、データ保存先といった、ディレクトリやファイルの構成を把握しておきます。

そのあたりの設定は、mongod.confという設定ファイルにまとめて記載されています。Macユーザの場合は、このmongod.confは、/usr/local/etc/配下に格納されています。

中をみてみると、以下のような設定がされていました。

systemLog:
  destination: file
  path: /usr/local/var/log/mongodb/mongo.log
  logAppend: true
storage:
  dbPath: /usr/local/var/mongodb
net:
  bindIp: 127.0.0.1
~                         

MongoDBの基本操作

続けて、MongoDBの基本的な使い方についてもまとめておきます。

Mongo DBの起動

インストールが完了した状態では、MongoDBのサービスは起動していないため、下記コマンドで起動します。

brew services start mongodb-community

Mongo DBへの接続

初回接続時には認証の設定等していないので、以下のコマンドで接続できます。

mongo

データベース一覧の確認

show dbs

データベースの作成/切替・削除

use データベース名 #作成・切替

use 削除したいDB名 #削除
db.dropDatabase()

データベースの統計情報確認

db.stats()

コレクション一覧の確認

コレクションとは、一般的なRDBでいうとテーブルにあたるものです。

show collections

コレクションの作成・削除

db.createCollection('コレクション名') #作成
db.コレクション名.drop()

コレクションへのデータ追加・更新・削除

## 追加
db.コレクション名.insert({項目名1:値1, 項目名2:値2, ....});

## 更新
db.コレクション名.update({条件項目名:条件値},{$set:{更新対象項目:更新値})

## 削除
db.コレクション名.remove({条件項目名:条件値})

以上、MongoDBのインストール方法と基本操作の解説でした。

次の記事では、実際にSNS等から取得したテキストデータをこのMongoDBにストアしていく仕組みを作っていこうと思います。

本日も最後までご覧いただきありがとうございました!

この記事を気に入っていただけたらシェアをお願いします!

コメントを残す

メールアドレスが公開されることはありません。

ABOUT US

Yuu113
初めまして。Yuu113と申します。 兵庫県出身、東京でシステムエンジニアをしております。現在は主にデータ分析、機械学習を活用してビジネスモデリングに取り組んでいます。日々学んだことや経験したことを整理していきたいと思い、ブログを始めました。旅行、カメラ、IT技術、江戸文化が大好きですので、これらについても記事にしていきたいと思っています。