Windows10でMongoDBの設定
Windows10でMongoDBを使おうとしたら、少しつまづいたのでメモとして残しておく。
1. ダウンロードとインストール
MongoDB Download Centerから
Windows Server 2008 R2 64-bit and later, with SSL support x64
をダウンロードしてインストール。
2. パスを通す
デフォルトのパスC:\Program Files\MongoDB\Server\3.4\bin
をシステム環境のPathに登録。
3. ログとデータの保存場所を確保
僕の環境だとMongoDBをインストールしたCドライブが0.5TBしかないのに対して、Dドライブが1.8TBあるので、 ビッグデータに備えて、以下のようにDドライブにログとデータの保存場所を作成しておく。ここは各自の好みでOK。
D:\db\mongodb\log\
D:\db\mongodb\data\
4. MongoDBの設定ファイルの作成
MongoDBを起動するときは、毎回上記のパスを教える必要がある。
面倒なので、以下の内容の設定ファイルmongod.cfg
を作成して、C:\Program Files\MongoDB\Server\3.4\bin\
に置いておく。
拡張子は、cfgでもconfでもconfigでも何でもいいっぽい。なお、設定ファイルの置き場所も各自の好みでOK。
systemLog: destination: file path: D:\db\mongodb\log\mongod.log storage: dbPath: D:\db\mongodb\data
5. 設定ファイルのWindowsサービス登録
上記で作成した設定ファイルをWindowsサービスに登録することで、Windowsと同時にMongoDBを起動できる。
コマンドプロンプトを管理者権限で立ち上げて、mongod --config "C:\Program Files\MongoDB\Server\3.4\bin\mongod.cfg" --install
と入力して実行する。
しかし、以下のようなエラーが出る可能性がある。
PS C:\WINDOWS\system32> mongod --config "C:\Program Files\MongoDB\Server\3.4\bin\mongod.cfg" --install Error parsing YAML config file: yaml-cpp: error at line 5, column 8: illegal map value try 'C:\Program Files\MongoDB\Server\3.4\bin\mongod.exe --help' for more information
設定ファイルについて、以下の4つが守られていないことが原因と考えられる。
- utf-8で保存
- タブを使わない
- systemLogとstorageの間を開けない
- パスをダブルクォーテーションで囲まない
修正したら、以下の通り上手くいくはず。
PS C:\WINDOWS\system32> mongod --config "C:\Program Files\MongoDB\Server\3.4\bin\mongod.cfg" --install PS C:\WINDOWS\system32>
6. Pythonからの操作
PythonからMongoDBを操作する場合は、pymongo
を使えるようになるとよい。
以下の記事でCRUD操作の基礎を学べる。