たかおLab

EC2にMongoDBを入れて、ローカルからMongoDB Compassを使って接続する

その他 データベース
MongoDBのロゴ画像

タイトル通り、EC2インスタンスに入れたMongoDBに、ローカルマシンに入れたMongoDB Compassから接続してみたので、手順を備忘録として残します。

 

前提

 

EC2に関して、

OS : Amazon Linux 2

DB : MongoDB 4.2 Community Edition

 

ローカルマシンに関して、

OS : macOS Catarina 10.15.5

 

 

 

EC2インスタンスの作成

 

まずはEC2をAmazon Linux 2で作成します。

 

今回は、デフォルトのVPC領域の、パブリックサブネットを使用しました。

 

セキュリティグループには、SSHの他に、カスタムTCPで27017番ポートを、0.0.0.0/0に向けて開けておきます。

 

具体的な操作方法は調べればいくらでも出てくるので、ここでは省略。

 

 

 

MongoDBのインストール

 

インスタンス作成後、以下のURLに沿ってMongoDBをインストール。

https://docs.mongodb.com/manual/tutorial/install-mongodb-on-amazon/

 

概要は、

 

① /etc/yum.repos.d/mongodb-org-4.2.repo を作成。

 

② sudo yum install -y mongodb-org

 

③ sudo service mongod start

 

④ 再起動後も立ち上がるようにしたいなら、以下を実行。

sudo chkconfig mongod on

 

 

これで無事に立ち上がったのですが、デフォルトの設定だと、MongoDBへの接続が localhost からしか許可されていません。

 

なので、/etc/mongod.conf を以下のように編集。

 

 

で、再起動。

 

 

 

MongoDB Compassをインストールし、接続設定

 

次は、MongoDB Compassを準備します。

 

https://docs.mongodb.com/compass/current/install/

上記URLを参考に、MongoDB Compassをインストールし、

 

https://docs.mongodb.com/compass/current/connect/

上記URLを参考に、接続してみます。

 

 

Hostnameには、インスタンスのIPアドレスを入れます。

 

 

 

SSH Hostnameにも、同じくインスタンスのIPアドレスを入れます。

 

SSH Identify Fileには、インスタンス作成時にダウンロードした公開鍵を選択します。

 

 

 

これで接続成功です。

 

 

参考URL

 

SSH接続時の userって? hostnameって?| teratail

 

MongoDBの設定ファイルを編集後、restartができない。| teratail