Rutger Hofste
Rutger Hofste

Reputation: 4373

Obtain aws cli command to create RDS instance from existing database

Is there a way to automatically generate the database creation string for an empty database with settings from an existing database?

I created an AWS RDS postgresql database instance using the console in my browser. I selected all kind of setting in my browser and launched the instance. Now I want to replicate this database (empty) with a command for programmatic use. I would like to delete the existing RDS instance so a raw command would be preferred (no reference to another RDS) but something like:

aws create-db-instance --db-name database02 --allocated-storage 200 --engine postgres etc. 

Upvotes: 1

Views: 1223

Answers (1)

strongjz
strongjz

Reputation: 4491

You'll need to create a snapshot of the source Database, instance or cluster and then create a new database based on that snapshot. You can delete the source database after the snapshot is complete.

aws rds create-db-snapshot  
    --db-snapshot-identifier mydbsnapshot  
    --db-instance-identifier mydb

aws rds restore-db-instance-from-db-snapshot 
    --db-instance-identifier mynewdbinstance 
    --db-snapshot-identifier mydbsnapshot

http://docs.aws.amazon.com/cli/latest/reference/rds/create-db-snapshot.html

http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_RestoreFromSnapshot.html

http://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-instance-from-db-snapshot.html

Upvotes: 3

Related Questions