class BackupFoundation::Item::MySQL

Public Class Methods

exist?(rails_env=nil) click to toggle source
# File lib/backup_foundation/item/mysql.rb, line 5
def exist?(rails_env=nil)
  defined?(ActiveRecord::Base) &&
  ActiveRecord::Base.configurations &&
  ActiveRecord::Base.configurations[rails_env] &&
  %w(mysql mysql2 mysql2spatial).include?(ActiveRecord::Base.configurations[rails_env]['adapter'])
end
get_config(rails_env=nil) click to toggle source
# File lib/backup_foundation/item/mysql.rb, line 12
def get_config(rails_env=nil)
  config = ActiveRecord::Base.configurations[rails_env]
  {
    host: config['host'],
    port: config['port'],
    user: config['username'],
    password: config['password'],
    database: config['database'],
    socket: config['socket']
  }
end

Public Instance Methods

command_params() click to toggle source
# File lib/backup_foundation/item/mysql.rb, line 29
def command_params
  [:host, :port, :socket, :user, :password].map do |option|
    next if @options[option].blank?
    "--#{option}='#{@options[option]}'"
  end.compact.join ' '
end
load_dump(infile_path) click to toggle source
# File lib/backup_foundation/item/mysql.rb, line 36
def load_dump(infile_path)
  decrypt_if_needed_and_restore "mysql #{command_params} #{@options[:database]}", infile_path
end
save_dump(tmpdir) click to toggle source
# File lib/backup_foundation/item/mysql.rb, line 25
def save_dump(tmpdir)
  dump_and_encrypt_if_needed "mysqldump #{command_params} --single-transaction #{@options[:database]}"
end