DB2S3

A rails plugin to backup Mysql to Amazon S3. You’re looking at a monthly spend of four cents. So pony up you cheap bastard, and store your backups on S3

Usage

# In config/environment.rb
config.gem "db2s3", :source => "http://gemcutter.org"

# In Rakefile
require 'db2s3/tasks'

# In config/initializers/db2s3.rb
DB2S3::Config.instance_eval do
  S3 = {
    :access_key_id     => 'yourkey',
    :secret_access_key => 'yoursecretkey',
    :bucket            => 'yourapp-db-backup'
  }
end
# DB credentials are read from your rails environment

rake gems:install

# Add to your crontab or whatever
rake db2s3:backup:full
rake db2s3:backup:incremental # Unimplemented

# Handy tasks
rake db2s3:statistics      # Shows you the size of your DB
rake db2s3:backup:restore  # You should be testing this regularly
rake db2s3:backup:clean    # Clean up old backups - cron this

Development

Specs are really week. This code is bit hackish but is being used by quite a few people.

Kudos

github.com/pauldowman/blog_code_examples/tree/master/mysql_s3_backup