【发布时间】:2014-03-04 23:06:46
【问题描述】:
有一个gem db2fog,但它只适用于 Rails 3。
有什么适合在 Rails 4 中进行数据库备份的东西吗?
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-4 database-backups
有一个gem db2fog,但它只适用于 Rails 3。
有什么适合在 Rails 4 中进行数据库备份的东西吗?
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-4 database-backups
看看Backup gem。它提供了一组非常好的功能,例如:
该插件完全独立于Rails,因此您可以将其用于其他应用程序。
备份模型示例(MySQL、Amazon、Gzip 和电子邮件通知):
Model.new(:my_backup, 'My backup description') do
database MySQL do |db|
db.name = "database_name"
db.username = "username"
db.password = "pass"
db.host = "localhost"
db.port = 3306
end
store_with S3 do |s3|
s3.access_key_id = "access_key_id"
s3.secret_access_key = "secret_access_key"
s3.bucket = "bucket_name"
s3.path = "path/to/your/backups"
end
compress_with Gzip
notify_by Mail do |mail|
mail.on_success = true
mail.on_warning = true
mail.on_failure = true
mail.from = "sender@email.com"
mail.to = "receiver@email.com"
mail.address = "smtp.gmail.com"
mail.port = 587
mail.domain = "your.host.name"
mail.user_name = "sender@email.com"
mail.password = "pass"
mail.authentication = "plain"
end
end
执行备份:
$ backup perform --trigger my_backup
使用 cron 作业(例如使用 whenever gem)安排备份,您将获得一个简单有效的解决方案:
every 1.day, :at => '1:00 am' do
command "backup perform --trigger my_backup"
end
希望对你有帮助。
【讨论】:
我知道你的问题已经解决了,但我想在这个帖子中添加Dumper.io 工具。我喜欢这个工具的简单性。
【讨论】: