Amazon RDS (Relational Database Service) is a fully managed cloud database service that makes it easy to set up, operate, and scale relational databases. This post covers RDS features including automated backups, Multi-AZ high availability, read replicas, and supported database engines like MySQL, PostgreSQL, Oracle, and SQL Server.
Amazon RDS Overview
- RDS stands for Relational Database Service
- It’s a managed DB service for DB use SQL as a query language.
- It allows you to create databases in the cloud that are managed by AWS
- Postgres
- MySQL
- MariaDB
- Oracle
- Microsoft SQL Server
- Aurora (AWS Proprietary database)
Advantage over using RDS vs deploying DB on EC2
- RDS is a managed service:
- Automated provisioning, OS patching
- Continuous backups and restore to specific timestamp (Point in Time Restore)@
- Monitoring dashboards
- Read replicas for improved read performance
- Multi AZ setup for DR (Disaster Recovery)
- Maintenance windows for upgrades
- Scaling capability (vertical and horizontal)
- Storage backed by EBS (gp2 or io 1)
- BUT you can’t SSH into your instances
RDS - Storage Auto Scaling
- Helps you increase storage on your RDS DB instance dynamically
- When RDS detects you are running out of free database storage, it scales automatically
- Avoid manually scaling your database storage
- You have to set Maximum Storage Threshold (maximum limit for DB storage)
- Automcaically modify storage if:
- Free storage is less than 10% of allocated storage
- Low-storage lasts at least 5 minutes
- 6 hours have passed since last modification
- Useful for applications with unpredictable workloads
- Supports all RDS database engines (MariaDB, MySQL, PostgreSQL, SQL server, Oracle)
RDS Read Replicas - Use Cases
- You have a production database that is taking on normal load
- You want to run a reporting application to run some analytics
- You create a Read Replica to run the new workload there
- The production application is unaffected
- Read replicas are used for SELECT (=read) only kind of statements (not INSERT, UPDATE, DELETE)
Amazon RDS Hands-on
RDS from search bar > Dashboard > click Create Database > choose MySQL > choose Engine Version latest > Templates - production > Availability and durability - Single DB instance > username - admin and password - linn1197 > Instance configuration - Burstable classes and check include previous generation classes > Storage - General Purpose SSG (gp2) > Allocated storage 20 > Enable storage autoscaling > choose don’t connect to an EC2 compute resource > public access Yes > VPC security group Create new > put group name> additional configuration > 3306 > Db authentication > Password Authentication> click create
Download Sqlelectron -> https://github.com/sqlectron/sqlectron-gui/releases/tag/v1.38.0
Go RDS > databases > click security group > click inbound rule > edit modify inbound > Source change to anywhere > save rules
Go sqlelectron > click Add btn> put Name > Db Type Mysql > Server address - Endpoint from AWS database > put username and password that created by AWS database > connect
Frequently Asked Questions
What is Amazon RDS?
Amazon RDS is a managed relational database service that automates administrative tasks like hardware provisioning, database setup, patching, and backups, supporting engines including MySQL, PostgreSQL, MariaDB, Oracle, and SQL Server.
What is RDS Multi-AZ and why use it?
RDS Multi-AZ creates a synchronous standby replica in a different Availability Zone, providing automatic failover and increased availability in case of infrastructure failure or maintenance.
How do RDS read replicas work?
RDS read replicas are asynchronous copies of your primary database that offload read traffic, improve performance for read-heavy workloads, and can be promoted to standalone databases if needed.

