Class: Leipreachan::Backuper

Inherits:
DBBackup show all
Defined in:
lib/leipreachan/mysql2.rb,
lib/leipreachan/postgresql.rb

Constant Summary

Constants inherited from DBBackup

DBBackup::DIRECTORY, DBBackup::MAX_DAYS

Instance Attribute Summary

Attributes inherited from DBBackup

#backup_file, #backup_folder, #base_path, #db_config, #directory, #file_for_restore, #max_days, #target_date

Instance Method Summary collapse

Methods inherited from DBBackup

#backup!, #check_system_requirements!, #initialize, #list, #restore!, #restorefile!

Constructor Details

This class inherits a constructor from Leipreachan::DBBackup

Instance Method Details

#dbbackup!Object



19
20
21
# File 'lib/leipreachan/mysql2.rb', line 19

def dbbackup!
  system("mysqldump -h #{host} #{user} #{password}-i -c -q --single-transaction #{db_config['database']} | gzip > #{backup_file}.gz")
end

#dbrestore!(file) ⇒ Object



23
24
25
# File 'lib/leipreachan/mysql2.rb', line 23

def dbrestore! file
  system("zcat < #{file} | mysql -h #{host} #{user} #{password}#{db_config['database']}")
end

#hostObject



15
16
17
# File 'lib/leipreachan/mysql2.rb', line 15

def host
  @host ||= db_config['host'].present? ? db_config['host'] : "localhost"
end

#passwordObject



11
12
13
# File 'lib/leipreachan/mysql2.rb', line 11

def password
  @password ||= db_config['password'].present? ? "-p#{db_config['password']} " : ""
end

#system_check_listObject



3
4
5
# File 'lib/leipreachan/mysql2.rb', line 3

def system_check_list
  %w(gzip zcat mysql mysqldump)
end

#userObject



7
8
9
# File 'lib/leipreachan/mysql2.rb', line 7

def user
  @user ||= db_config['username'].present? ? "-u#{db_config['username']}" : ""
end