iT邦幫忙

2025 iThome 鐵人賽

DAY 25
0
Modern Web

30 天,讓 TypeScript 把你的 Node.js 開發再升級系列 第 25

Day 25|AWS RDS 入門:在雲端打造你的第一個資料庫服務

  • 分享至 

  • xImage
  •  

EC2 能架網站,那資料庫呢?

今天我們要一起開啟第一台 RDS


為什麼要用 RDS?

理論上,我們也可以在 EC2 上自己安裝資料庫(例如 MySQL、PostgreSQL),

但這樣做會遇到幾個痛點 👇

項目 自架在 EC2 使用 RDS
安裝流程 需要手動安裝 MySQL / PostgreSQL 一鍵建立,自動設定環境
維護 要自己備份、更新、監控 AWS 代管自動備份、更新、監控
安全性 要自己配置防火牆、使用者 內建 VPC、Security Group、IAM 控制
擴展性 要手動調整硬體資源 可自動或手動擴充規模(vertical / read replica)

換句話說,RDS 就是幫你「代管資料庫」的 EC2

底層仍然是虛擬機(EC2),但 AWS 幫你把「系統管理」那層抽象掉了,

讓開發者只需要專注在「資料與應用程式」。


RDS 的底層其實是 EC2 嗎?

是的,但差別在於:

  • RDS 是 受管服務(Managed Service)
  • AWS 會負責:
    • 建立與維護 EC2 instance
    • 安裝與配置資料庫引擎(MySQL / PostgreSQL / MariaDB / Oracle / SQL Server)
    • 定期 備份 / snapshot
    • 管理安全性群組與網路設定

簡單說:

你不再需要 sudo apt install postgresql,

而是直接在 AWS Console 上點幾下,資料庫就能用了 💥


跟著 AWS 一起開啟第一台 RDS

Step 1:進入 AWS Console → 探索 AWS → 點擊「建立 RDS 資料庫」

Step 2:建立資料庫執行個體

  • 選擇 輕鬆建立 (這是 AWS 提供的快速建立選項,適合新手體驗。)

  • 選擇引擎 → PostgreSQL

  • 資料庫執行個體大小 → 免費方案

Step 3:設定帳號密碼

  • 資料庫執行個體識別符:database-1

  • 主要使用者名稱:postgres

  • 憑證管理:自我管理

  • 使用者密碼:勾選自動產生密碼

  • 點擊 → 建立資料庫

  • 等待建立執行個體時 → 點擊檢視連線詳細資訊

  • 保存資料庫使用者名稱與密碼 (等等連線時會用到)

Step 4:設定 EC2 安全群組

回到 AWS Console → 點擊 EC2 → 側邊欄點擊安全群組

點擊右上方建立安全群組 → 填寫名稱描述等資訊

設定傳入規則 (填寫資訊如下圖) → 拉到最下方點擊建立安全群組

⚠️ 若開放 0.0.0.0/0 僅供測試使用,正式環境建議限制特定 IP 或使用 Private Subnet。

Step 5:設定公開連線

  • 進入 RDS 儀表板 → 點擊右上方修改

  • 下拉到連線區塊 → 新增我們剛剛建立的安全群組 my-pgsql-rule

  • 連線區塊最下方有個其他組態的設定 → 勾選可公開存取

  • 下拉到最下方按下繼續 → 檢視修改項目 → 點擊修改資料庫執行個體

  • 下圖為修改中的資料庫執行個體


使用 DBeaver 連線測試

修改完 RDS 後,回到主控台的查看執行個體的「端點」與「連接埠」:

開啟 DBeaver → 新建連線:

  • 選擇資料庫類型:PostgreSQL

  • Host:輸入 RDS 端點

  • Port:5432

  • Database:postgres

  • Username / Password:剛剛設定的帳密

點擊 Test Connection

如果顯示成功,就代表你成功連線了雲端資料庫!


⚠️ 開發測試的安全提醒

本篇教學屬於 入門範例,主要目的是讓大家體驗如何在雲端建立與連線資料庫。

實際正式專案部署時,需特別注意以下幾點:

  1. 請勿長期開放 Public access

    若你的資料庫可被全網連線(0.0.0.0/0),將有較高的安全風險。

  2. 測試完記得清理資源

    若僅為練習,建議在測試結束後 終止或刪除 RDS 執行個體,以避免產生額外費用。

  3. 正式環境建議做法

    • 將 RDS 放在 Private Subnet,不開放外部連線。
    • 僅允許應用伺服器(EC2)內部網路存取。

結語

從 EC2 到 RDS,我們已經踏入雲端資料架構的世界!

明天我們將進一步探索:

  • 如何讓 Node.js 專案連上 RDS
  • .env 中配置資料庫連線字串
  • 並驗證資料是否能正常 CRUD

鐵人賽還剩下幾天呀~加油!加油!


上一篇
Day 24|從本地到雲端:把你的 Node.js 專案部署上 AWS EC2!
系列文
30 天,讓 TypeScript 把你的 Node.js 開發再升級25
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言