Amazon RDS

Managed relational database service — AWS runs the server, you run the schema.

Verified against AWS documentation · 2026-09-09

Key facts

  1. 01AWS handles provisioning, OS patching, backups, and failover — you get an endpoint, not a box. No SSH, no OS access
  2. 02Six engines: MySQL, PostgreSQL, MariaDB, Oracle, SQL Server, Db2 — plus Aurora, AWS's own MySQL/PostgreSQL-compatible engine
  3. 03Multi-AZ = availability: synchronous standby in another AZ, automatic failover, serves zero read traffic
  4. 04Read replicas = scale: asynchronous, read-only, promoted manually — a different problem from Multi-AZ
  5. 05Limits: 35-day max automated backup retention, up to 15 read replicas per instance on most engines, encryption can only be turned on at creation, stopped instances auto-restart after 7 days

Exam triggers

Phrases and scenarios that point here.

  • "Managed relational database", "minimize database admin overhead", "existing MySQL/PostgreSQL app" → RDS, not a database on EC2
  • "Survive an AZ outage" → Multi-AZ. "Read-heavy" or "offload reporting" → read replicas. The exam swaps these two constantly
  • "Restore to any point in the last N days" → automated backups. "Keep this copy indefinitely" → manual snapshot
  • Needs OS-level access, a custom engine build, or an unsupported database → EC2, not RDS

Not this service

  • Key-value or document data, serverless, single-digit-millisecond reads → DynamoDB
  • MySQL/PostgreSQL-compatible but needs higher throughput or auto-scaling storage → Aurora
  • Analytics and BI over billions of rows → Redshift, not a bigger read replica

Use cases

  1. 01Lifting a self-managed MySQL box off EC2 so nobody has to babysit patch nights, backup cron jobs, or replication setup again
  2. 02The transactional core of an ordinary web app — users, orders, payments — anywhere you need joins, foreign keys, and a transaction that rolls back cleanly
  3. 03Pointing the finance team's month-end reporting queries at a read replica so their giant SELECT doesn't slow down checkout
  4. 04Multi-AZ in production, Single-AZ in staging — same engine, same code, roughly half the bill where an hour of downtime is survivable
  5. 05Manual snapshot before a risky schema migration, so a bad ALTER TABLE at 2am is a restore instead of an incident

How it's charged

  1. 01Instance hours billed per second while running — instance class is the biggest line item, and Multi-AZ roughly doubles it (a Multi-AZ DB cluster runs three instances, so roughly triples it)
  2. 02Storage is billed on what you provision, not what you use — a 500 GB volume holding 20 GB of data still costs 500 GB
  3. 03Backup storage is free up to 100% of your provisioned DB size; beyond that, and for backups retained after the instance is deleted, it's billed per GB-month
  4. 04Stopping an instance stops instance-hour charges but not storage or backup charges — and RDS restarts it automatically after 7 days
  5. 05Running a major engine version past its end of standard support adds an RDS Extended Support charge per vCPU-hour; it applies to the standby too, and Reserved Instance discounts don't cover it

Commonly confused with

References