Reputation: 360
To me I care more about the schema, functions and triggers, and less on the data itself. From AWS document(https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateSnapshot.html), it doesn't address my question clearly.
Amazon RDS creates a storage volume snapshot of your DB instance, backing up the entire DB instance and not just individual databases. ... Since the snapshot includes the entire storage volume, the size of files, such as temporary files, also affects the amount of time it takes to create the snapshot.
Upvotes: 4
Views: 9756
Reputation: 6974
On AWS RDS, a Database Server (MySQL or SQL Server) is made of 2 things.
Storage is the main Hard Disk that stores all the data files.
So, when you take a snapshot or backup on AWS RDS or Aurora, it creates a copy of the attached EBS volume (storage) and stores it somewhere in its data centers.
For example, you created 3, 4, or N SQL Server databases on an RDS SQL Server and you took the database snapshot or backup, then a copy of the complete EBS volume where database datafile (MFD, LDF, etc) are residing will be created. And when you restore it on a new instance, all databases will be restored, not an individual one.
Now answering your question, for SCHEMA backup, you can generate scripts from respective Database Management Tools.
Upvotes: 2
Reputation: 1518
Being block level backups, AWS RDS snapshots include schema and data.
If you want a schema-only backup then use pg_dump
with the --schema-only
directive for PostgreSQL or mysqldump
with --no-data
for MySQL.
Upvotes: 2
Reputation: 1512
As far as I am aware, the schema, data, functions and triggers are all included. It includes all databases in the instance.
If you specifically don't want data to be backed up then you would need to create a manual backup process.
Upvotes: 2