AWS Aurora Databases
- Aurora is cloud optimized mysql and postgres compatible relational database.
- Aurora provides performance and durability by implementing a fully distributed and self healing storage system and it also provides availability by using the elasticity and management capabilities of AWS Cloud
- Aurora has two flavors
- MySQL
- Compatible with versions 5.6 and 5.7
- PostgreSQL
- Compatible with version 9.6
- MySQL
- Aurora deals with storage bit differently to regular RDS. There is a separate storage layer that is automatically replicated across six different storage nodes in three AZ’s

- All of the data mirroring happens synchronously, hence no data loss. At the same all the data is continuously backed up to S3 to ensure durability & availabilty
- On an avergae we can get upto five times increase in performance running an Aurora database compared to regular mysql or postgres engine

Creating AWS RDS instances using AWS CLI
- Installing and configuring AWS CLI Refer Here
- Steps for configuring AWS CLI
- Install AWS CLI
- Create an IAM User
- Configure aws cli using
aws configure - Now to test whether cli is working or not
aws s3 ls
- To Create database, we need the following information
- which database engine
- which instance class
- which subnet
- which az
- automatic backups to be enabled or not
- database to be public accessible or not
- security group
- For the purpose of first rds instance lets go with the assumption
- Use an existing security group
- Database engine: mysql
- public accesible is true
- database instance size: db.t2.micro
- Lets find aws rds cli command to create rds instance

- Now lets build our command
aws rds create-db-instance
- Refer Here for the changeset containing creation command
- Now lets try to get rds instance details Refer Here
- Refer Here for deleting database instance
- Exercise:
- Create a postgres db instance from cli size db.t2.micro and describe and delete
- Create an oracle db instance from cli size db.t2.micro and describe and delete
