2017-03-26 79 views
0

爲了在我的node.js上使用MongoDB AWS EC2實例是否只需在通過SSH登錄後通過命令行安裝MongoDB並在實例內創建數據庫?如何在Amazon Web Services上使用MongoDB

換句話說,我是否簡單地在EC2實例中爲我的Web應用程序創建了一個數據庫,就像我在本地機器上一樣?

回答

0

你有不同的選擇。回答你的問題:是的,你可以這樣做。但是,也有亞馬遜的官方指南set up a MongoDB cluster on AWS。另外,如果您只需要一個NoSQL數據庫,則還應該檢查由Amazon開發的DynamoDB。這將消除對數據庫的EC2實例的需求。欲瞭解更多信息,請查看official docs

+1

謝謝你。很有幫助。我是AWS的新手,所以只是想方設法......跟進問題......如果我繼續在EC2實例中創建數據庫,那麼這樣做的優缺點是什麼?縮放大量用戶等時會不太可靠嗎? –

+0

如果您想知道MongoDB與DynamoDB的優缺點,請查看[this SO question](https://stackoverflow.com/questions/17931073/dynamodb-vs-mongodb-nosql)。如果您想知道爲您的數據庫使用EC2的優點,可以查看[本文]的EC2部分(http://www.dbta.com/Columns/Next-Gen-Data-Management/To-RDS-或-EC2-凡威爾 - 你的數據庫的待更快樂 - 102958.aspx)。 –

1

剛剛從EC2 & MongoDB的長時間(並在開始痛苦)的經驗。這裏有一些疑難雜症。 我假設你只是從你的問題出發 - 所以我要承擔最小的設置:

  1. 如果你能夠訪問互聯網的服務器上安裝MongoDB的,然後確保你也適用MongoDB的角色到你的數據庫。 不,我再說一遍,不要讓它向世界開放。管理員和讀/寫角色在這裏至關重要,而MongoDB文檔將爲您提供幫助。順便說一句,即使它完全安全在防火牆和其他類似的東西之後,也總是使用角色。他們是你的最後一道防線。
  2. 準確研究並理解安全組的工作方式,以限制入站和出站。
  3. 如果可以,請使用彈性IP。如果您移動服務器,它將爲您節省很多麻煩,而不僅僅是您的IP不會改變。
  4. 當你加速到面向前端的互聯網服務器和Mongo後面時,可以使用Sharding,Clusters等在NAT網關上進行讀取。它首先是令人困惑的,但是NAT網關(而不是 NAT實例)在一種配置或另一種配置中是體面的設置。
  5. 在更改環境時拍攝環境的快照或完整圖像。這對於備份很有用,而且當您轉移到更強大的服務器時,它將爲您節省大量工作。
  6. 如果您尚未嘗試使用MongoBoosterRoboMongo。他們將會幫助你完成Mongo的工作。

祝你好運,享受!

相關問題