【CentOS7】CentOS7でMongoDBをインストール~外部接続まで
今回はCentOS7上でMongoDBをインストールする方法を記載します。
※CentOS7より前のCentOSの場合はサービス起動やポート開放の方法が異なります。
MongoDBとは?
MongoDbはNoSQLデータベースの一種で、ドキュメント型のNoSQLに分類されます。
MongoDBはJavascriptインタプリタを使用しているため、Javascriptの記述でDB操作が行えるというのが特徴です。
MongoDBを設定する
yumの設定ファイルを作成する
まずはMongoDBをインストールしたいところなのですが、yumの設定ファイルを作成しないとyumでインストールできないようです。
/etc/yum.repos.d/の下にmongodb-org-4.0.repoというファイルを作成し、以下の内容を記載しましょう。
[mongodb-org-4.0] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.0/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc
※4.0の部分はMongoDbのバージョンによって変更してください。
<2019/2/11追記>
上記の記載が誤っておりましたので修正しました。改行が入っていませんでしたので、追加しました。
MongoDBをインストールする
yumコマンドでインストールします。
sudo yum install -y mongodb-org
サービスを起動する
MongoDBのサービスを起動し、DBを使えるようにします。
sudo systemctl enable mongod.service sudo systemctl start mongod.service
エラーが発生していなければOKです。
ポート開放をします
ポート開放をします。CentOS7からはiptableがなくなっており、firewallが代わりとなっています。
なので、こちらの設定を行います。
firewall-cmd --zone=public --add-port=27017/tcp --permanent
ポート開放の設定をしたら、firewallを再起動して設定を有効にします。
systemctl reload firewalld.service
外部接続を有効にする
/etc/mongod.conf
の以下の箇所を修正します。
# network interfaces net: port: 27017 bindIp: 0.0.0.0 # Enter 0.0.0.0,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.bindIpAll setting.
※bindIpが127.0.0.1になっていれば、0.0.0.0(IP制限無し)もしくは指定したIPに変更します。
これで外部接続が可能になります。
※他に調べて出てくるものではbind_ipとなっているかもしれないです。mongodbのアップデートで設定ファイルの記載が変わったようです。
最後に
これでMongoDBが外部から接続可能になります。割と簡単ですね。
とか言いつつ、CentOS7でiptable無くなっているの知らなくて、地味に詰まったりしたりしました…。
この記事が皆様の参考になれば幸いです。
参考
https://qiita.com/one-kelvin/items/b1740824da0b3e9af9dd
https://qiita.com/ongaeshi/items/bb17ebfbd4d22057c8fd
https://qiita.com/haisaihiroki/items/c38cb3c0a331db9b6f69
https://qiita.com/Chanmoro/items/cbf4e451d0a89f4d7c1a
ディスカッション
コメント一覧
まだ、コメントがありません