Module: EDB::DBMS::MySQL

Defined in:
lib/edb/dbms/mysql.rb

Class Method Summary collapse

Class Method Details

.backup(dir_name) ⇒ Object



29
30
31
32
33
34
35
36
37
38
39
40
# File 'lib/edb/dbms/mysql.rb', line 29

def backup(dir_name)
  db    = ::EDB.opts[:DBMS][:MySQL]
  files = {
    dump: File.join(dir_name, "#{db[:database]}.sql")
  }

  ::EDB::Logger.log(:info, "Dumping #{db[:database]}...")
  mysqldump = db[:binpath] && !db[:binpath].empty? ? File.join(db[:binpath], 'mysqldump') : 'mysqldump'
  system "#{mysqldump} -u #{db[:username]} --password=#{db[:password]} --default-character-set=utf8 #{db[:database]} > #{files[:dump]}"

  files.values
end