mysql - 如何在Rails 4中自动备份Mysql数据库

标签 mysql ruby-on-rails whenever

我在 Windows 中使用 Rails 4 和 Mysql2 作为数据库。我想每秒自动备份我的数据库。因此,在我指定的路径中应该每秒生成一个文件夹,并且还必须发送一封电子邮件以及数据库作为附件。每当 gem 用于此目的时,我都会使用它,但我无法获取我必须在日程表中写入的内容.rb 文件。

schedule.rb file

every :day, :at => '12:05am' do
  rake 'task_namespace:autobackup' , :environment => 'development',   :output => 'log/autobackup_mail.log'
  # rake 'task_namespace:autobackup_with_mail' , :environment => 'development',   :output => 'log/autobackup.log'
end

最佳答案

您可以使用 gem 备份。

Backup is a system utility for Linux and Mac OS X, distributed as a RubyGem, that allows you to easily perform backup operations. It provides an elegant DSL in Ruby for modeling your backups. Backup has built-in support for various databases, storage protocols/services, syncers, compressors, encryptors and notifiers which you can mix and match. It was built with modularity, extensibility and simplicity in mind.

您可以访问: http://backup.github.io/backup/v4/database-mysql/

Backup 允许您使用 Ruby DSL 对备份作业进行建模:

Backup::Model.new(:my_backup, 'Description for my_backup') do
  # ... Model Components ...
end

:my_backup 符号是模型的触发器,用于执行作业:

$ backup perform --trigger my_backup

它还支持 PostgreSQL、MongoDB、Redis、Riak、SQLite

关于mysql - 如何在Rails 4中自动备份Mysql数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43320451/

相关文章:

php - 如果可能的话,使用 PHP 从 JSON 格式的两个 MySQL 表中获取数据

mysql - 如何从 Rails 调用 MySQL 存储过程?

ruby-on-rails - 使用 Chromebook 14 进行开发的建议

ruby-on-rails - rake 中止! ActiveRecord::StatementInvalid: SQLite3::SQLException: 没有这样的表:无法让 Rake Automation 工作

ruby - 每当 gem 并从偏移量开始每 n 分钟安排一次作业

mysql - 借助另一个表连接两个表——MySQL join

php - 查询的 mysql_insert_id?

mysql - 按周检查的 SQL 查询

ruby-on-rails - 您没有写入/var/lib/gems/1.9.1 目录的权限

ruby-on-rails - 每当 cron 不触发备份时