class Backhoe::Mysql
Public Instance Methods
dump(skip_tables: [])
click to toggle source
# File lib/backhoe/mysql.rb, line 5 def dump skip_tables: [] mysqldump = `which mysqldump`.strip raise RuntimeError, "Cannot find mysqldump." if mysqldump.blank? sh "#{mysqldump} --no-create-db --single-transaction --quick -e #{skip_table_options(skip_tables)} #{mysql_options} > #{file_path}" end
load()
click to toggle source
# File lib/backhoe/mysql.rb, line 11 def load mysql = `which mysql`.strip raise RuntimeError, "Cannot find mysql." if mysql.blank? sh "#{mysql} #{mysql_options} < #{file_path}" end
Private Instance Methods
mysql_options()
click to toggle source
# File lib/backhoe/mysql.rb, line 25 def mysql_options options = " -u #{config["username"]}" options += " -p'#{config["password"]}'" if config["password"] options += " -h #{config["host"]}" if config["host"] options += " -S #{config["socket"]}" if config["socket"] options += " '#{config["database"]}'" end
skip_table_options(skip_tables)
click to toggle source
# File lib/backhoe/mysql.rb, line 19 def skip_table_options skip_tables skip_tables.map do |table| "--ignore-table=#{config["database"]}.#{table}" end.join(" ") end