こんにちは。今回は、MacOS/WindowsでMongoDBを使えるようにする話です。
Mongo DB、昔少し触ったけれど、前回記事のTwitterデータ分析のように、最近外部から取得したテキストデータを分析することが増えてきたため、何かしらこれらのテキストデータをためておく方法はないかなと思ったところで、ドキュメントデータベースである、Mongo DBが再浮上してきたわけであります。
色々忘れてしまったところも多いので、改めて、備忘も兼ねてその手順を残しておこうと思います。
誤っているところがあればご指摘いただけると勉強になります・・!
- 2009年に初版が公開された、オープンソースのドキュメント指向データベース
- OracleDBやMySQL等のRDB(リレーショナルデータベース)とは異なる、NoSQL(Not Only SQL)に分類される
- 2018年10月16日より、商用利用の制限が厳しいSSPLライセンスに移行された。一般開発者が無償版で利用できるのはMongoDB Community版
Contents
インストール手順 for Mac
インストール
*記事を書いたのが2020年4月なので、もし古かったらごめんなさい。直近手順は以下から確認できます。
今回はパッケージ管理ソフトであるbrewを利用したインストール手順になります。
brew tap mongodb/brew
brew install mongodb-community
これでインストールは完了です。
インストールが完了していることを確認するため、以下コマンドを打ちます。バージョン情報が表示されたら正常にインストールされています。
mongod -version
なんとこれだけでインストールは終了。
インストール後の設定確認
ログファイルや、データ保存先といった、ディレクトリやファイルの構成を把握しておきます。
そのあたりの設定は、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
~
インストール手順 for Windows
インストール
こちらはGUIからのインストール手順をまとめておきます。
以下のサイトから、利用環境にあったバージョンをインストールできます。
https://www.mongodb.com/try/download/community
ダウンロードしたインストーラを起動してセットアップを開始します。
すべて規定値でインストールしても問題なく動くので、そのまま手順通りインストールを完了すれば、MongoDB & MongoDB操作のためのGUIツールMongoDB Compassが起動した状態となります。
インストール後の設定確認
まずPATHを設定しておきます。多分規定だとMongoDBのbinディレクトリは以下のような場所にあるかと思います。
C:\Program Files\MongoDB\Server.0\bin
このパスを環境変数に追加しておきます。
なお、データの実体は規定だと、以下の場所に蓄積されるようになっています。
C:\Program Files\MongoDB\Server.0\data
もし変更したい場合には、Macの時と同様mongodb.confファイルを作成して、そこに希望の場所を指定すればOKです。
MongoDBの基本操作
続けて、MongoDBの基本的な使い方についてもまとめておきます。
Mongo DBの起動
インストールが完了した状態では、MongoDBのサービスは起動していないため、下記コマンドで起動します。
Mac
brew services start mongodb-community
Windows
Windowsの場合はインストール時に起動しているはずですが、立ち上げなおす場合にはmongodコマンドを実行します。
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にストアしていく仕組みを作っていこうと思います。
本日も最後までご覧いただきありがとうございました!この記事が少しでも参考になりましたら下のいいねボタンをポチっていただけると励みになります!
(おまけ)MongoDBを体系的に勉強するなら
Amazonでもいくつか評価が高い本がでてきています。
個人的におすすめなのはUdemyです。以下がベストセラーのようですが、他にも講義はたくさんあるので、ニーズにマッチしたものが見つけられるのではないかと思いあmす。
- 講義形式で一緒に操作しながら学べる
- 万一期待した内容でなかった場合にクーリングオフ制度もある
- バージョンアップ等の進化に対応するスピードも書籍とくらべて早いので最新の内容で学べる