class Arql::Mysqldump
Public Class Methods
new(options = nil)
click to toggle source
# File lib/arql/mysqldump.rb, line 4 def initialize(options = nil) options ||= App.connect_options @options = options if options[:socket] port_or_sock = "-S #{options[:socket]}" else port_or_sock = "-P #{options[:port] || 3306}" end @base_dump_cmd = "mysqldump -u %{user} -h %{host} %{port_or_sock} %{password} --skip-lock-tables " % { user: options[:username], host: options[:host], password: options[:password].presence.try { |e| "-p#{e}" } || '', port_or_sock: port_or_sock } end
Public Instance Methods
dump_database(filename, no_create_db = false)
click to toggle source
# File lib/arql/mysqldump.rb, line 24 def dump_database(filename, no_create_db = false) system dump_database_cmd(no_create_db) + " > #{filename}" end
dump_database_cmd(no_create_db = false)
click to toggle source
# File lib/arql/mysqldump.rb, line 36 def dump_database_cmd(no_create_db = false) @base_dump_cmd + " " + if no_create_db "--no-create-db --add-drop-database --databases #{@options[:database]}" else "--add-drop-database --add-drop-table --databases #{@options[:database]}" end end
dump_table(filename, table_name, no_create_table = false)
click to toggle source
# File lib/arql/mysqldump.rb, line 20 def dump_table(filename, table_name, no_create_table = false) system dump_table_cmd(table_name, no_create_table) + " > #{filename}" end
dump_table_cmd(table_name, no_create_table = false)
click to toggle source
# File lib/arql/mysqldump.rb, line 28 def dump_table_cmd(table_name, no_create_table = false) @base_dump_cmd + " " + if no_create_table "--no-create-info #{@options[:database]} #{table_name}" else "--add-drop-table #{@options[:database]} #{table_name}" end end