1

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. 
Rutger Hofste
  • 3,105
  • 2
  • 22
  • 34

1 Answers1

2

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

strongjz
  • 3,574
  • 1
  • 14
  • 21