4
5
6
7
8
9
10
11
12
13
14
|
# File 'lib/rails_mysqldump.rb', line 4
def self.run(path = 'tmp/mysqldump')
dump_dir = Rails.root.join(path)
FileUtils.mkdir_p(dump_dir)
Dir.chdir(dump_dir)
db_conf = Rails.application.config.database_configuration[Rails.env]
password_option = db_conf['password'].nil? ? "" : "-p'#{db_conf['password']}'"
output_file = "#{Rails.env}_#{Time.current.to_s(:number)}.dump"
system "mysqldump -u #{db_conf['username']} #{password_option} -h localhost #{db_conf['database']} --single-transaction > #{output_file}"
end
|