Comment by rtpg

3 days ago

Figuring out how to do db backups _can_ also be fairly time consuming.

There's a question of whether you want to spend time learning AWS or spend time learning your DB's hand-rolled backup options (on top of the question of whether learning AWS's thing even absolves you of understanding your DB's internals anyways!)

I do think there's value in "just" doing a thing instead of relying on the wrapper. Whether that's easier or not is super context and experience dependent, though.

> Figuring out how to do db backups _can_ also be fairly time consuming.

apt install automysqlbackup autopostgresqlbackup

Though if you have proper filesystem snapshots then they should always see your database as consistent, right? So you can even skip database tools and just learn to make and download snapshots.

  • nah filesystem snapshots may not lead to consistent DB backups. DB backup software usually use a plugin to tell the DB to coalesce data before taking a snapshot.

    • Databases have to be ready for power loss, don't they? They might not be happy about it, but if that corrupts anything then the design has failed.

      And again I'll emphasize proper snapshot, cutting off writes at an exact point in time. A normal file copy cannot safely back up an active database.

    • > filesystem snapshots may not lead to consistent DB backups

      Only if your database files are split across multiple file systems, which is atypical.

    • At least one OS you’ve heard of can quiesce the file system to allow taking a consistent snapshot; I’d be surprised if this wasn’t widely available everywhere.

Hmmm, I think you have to figure out how to do your database backups anyway as trying to get a restorable backup out of RDS to use on another provider seems to be a difficult task.

Backups that are stored with the same provider are good, providing the provider is reliable as a whole.

(Currently going through the disaster recovery exercise of, "What if AWS decided they didn't like us and nuked our account from orbit.")

  • aws would never do that :) plus you can also do it in aws with like 75 clicks around UI which makes no sense even when you are tripping on acid

    • > 75 clicks

      Well 2 commands...

        aws rds export-task create \
          --source-arn <SnapshotArn> \
          --s3-bucket-name <Bucket> \
          --iam-role-arn <Role>
      
      

      Then copy it down

        aws s3 cp \
          <S3 Location> \
          <Local Dir> --recursive
      

      The biggest effort would be then running the Apache Parquet to CSV tool on it.

      3 replies →

most definitely do not want to spend time learning aws… would rather learn about typewriter maintenance