Amazon RDS
Managed SQL databases
Relational databases (MySQL, PostgreSQL, SQL Server, Oracle, MariaDB…) where AWS handles backups, patching and Multi-AZ.
- Cost$$ Medium
- Difficulty●●●●●
- Costs money when idle?Yes
- Managed by AWS
- In examsCLF · SAA · DVA · SOA
Think of it asLike hiring a head chef along with the kitchen: you only worry about the dishes (data), AWS runs the kitchen.
Where does RDS fit?
A real example, step by step
- An order-management app needs a MySQL database, but the team has no dedicated database administrator.
- You create RDS for MySQL, pick an instance size and storage, and enable Multi-AZ; AWS handles installation and patching.
- RDS backs up automatically every day; if data is deleted by mistake, you restore to a point a few minutes before it happened.
- If the primary fails, RDS switches to the standby in another AZ in about a minute or two, and the app keeps the same connection address.
- Month-end reports read a lot of data, so you add a read replica and reporting no longer slows down sales.
When to use it
✓ Use it when
Relational data that needs JOINs and ACID transactions.
✗ Avoid it when
You need near-unlimited scale with key-based access → DynamoDB.
Common uses
- Databases for web/apps (MySQL, PostgreSQL)
- Business systems that need ACID transactions
- Migrate on-prem databases to the cloud (with DMS)
RDS, Aurora or DynamoDB?
| Database type | Relational (SQL), several engines | Relational, MySQL/PostgreSQL compatible | NoSQL key-value |
|---|---|---|---|
| Scaling | Choose an instance size; add read replicas | Storage grows automatically; up to 15 replicas | Scales almost without limit |
| Queries | Full SQL with JOINs | Full SQL with JOINs | Mostly by key |
| Best for | Mid-sized business applications | High performance and fast failover | Very large, key-based workloads |
What does it cost?
- Pricing model: Per instance-hour (Multi-AZ ≈ double) + GB-month of storage + backups beyond the included amount + IOPS. Reserved Instances save up to ~70%.
- Free tier: Older accounts: 750 hours of db.t*.micro + 20 GB for 12 months.
Instances run 24/7 even when unused (can only be stopped for up to 7 days); Multi-AZ doubles the cost; manual snapshots pile up; engine versions past end of support → Extended Support fees.
Multi-AZ is for high availability (automatic failover); read replicas are for read performance — exams love to swap the two. An unencrypted database can't be encrypted in place: take a snapshot, copy it with encryption, then restore.
Try real exam questions
1An application uses an Amazon RDS MySQL DB instance. The RDS database is becoming low on disk space. A solutions architect wants to increase the disk space without downtime. Which solution meets these requirements with the LEAST amount of effort?
- AEnable storage auto scaling in RDS.
- BIncrease the RDS database instance size.
- CChange the RDS database instance storage type to Provisioned IOPS.
- DBack up the RDS database, increase the storage capacity, restore the database and stop the previous instance.
Show answer
Correct answer: A
Enable RDS storage auto scaling: storage grows automatically as the disk fills, with no downtime. A bigger instance doesn't add disk space; backup and restore causes downtime.
2A company's legacy application is currently relying on a single-instance Amazon RDS MySQL database without encryption. Due to new compliance requirements, all existing and new data in this database must be encrypted. How should this be accomplished?
- ACreate an Amazon S3 bucket with server-side encryption turned on. Move all the data to Amazon S3. Delete the RDS instance.
- BConfigure RDS Multi-AZ mode with encryption at rest turned on. Perform a failover to the standby instance to delete the original instance.
- CTake a snapshot of the RDS instance. Create an encrypted copy of the snapshot. Restore the RDS instance from the encrypted snapshot.
- DCreate an RDS read replica with encryption at rest turned on. Promote the read replica to primary and switch the application over to the new primary. Delete the old RDS instance.
Show answer
Correct answer: C
You can't turn on encryption for a running RDS instance. The right way: take a snapshot, make an encrypted copy of it, then restore a new instance from that copy. Read replicas and Multi-AZ can't be encrypted when the source isn't.
Frequently asked questions
How is RDS different from running a database on EC2?
With RDS, AWS handles installation, patching, automated backups and failover. Running it yourself on EC2 gives you full control over configuration, but you have to operate everything. Self-managing only makes sense when you need features or versions that RDS doesn't support.
What is the difference between Multi-AZ and read replicas?
Multi-AZ keeps a standby in another AZ and fails over automatically during an outage, which improves availability. Read replicas are copies that take read traffic, possibly in another region, which improves read performance. They serve two different purposes.
How is RDS priced?
By the hours of the database instance class, storage, backups beyond the free allowance and data transferred out. Multi-AZ roughly doubles the instance cost. A stopped instance can stay stopped for at most 7 days before RDS starts it again automatically.
What do AWS exams ask about RDS?
Multi-AZ versus read replicas, automated backups and point-in-time restore, encryption (which must be enabled when the database is created), RDS Proxy for Lambda, and when to move to Aurora or DynamoDB instead.