Class: Flydata::Mysql::MysqlDumpGenerator
- Inherits:
-
Object
- Object
- Flydata::Mysql::MysqlDumpGenerator
- Defined in:
- lib/flydata/command/sync.rb
Direct Known Subclasses
MysqlDumpGeneratorMasterData, MysqlDumpGeneratorNoMasterData
Constant Summary collapse
- MYSQL_DUMP_CMD_TEMPLATE =
host, port, username, password, database, tables
"mysqldump --protocol=tcp -h %s -P %s -u%s %s --skip-lock-tables --single-transaction --hex-blob %s %s %s"
- EXTRA_MYSQLDUMP_PARAMS =
""
Instance Method Summary collapse
- #dump(file_path) ⇒ Object
-
#initialize(conf) ⇒ MysqlDumpGenerator
constructor
A new instance of MysqlDumpGenerator.
Constructor Details
#initialize(conf) ⇒ MysqlDumpGenerator
Returns a new instance of MysqlDumpGenerator.
857 858 859 860 861 862 863 864 865 866 867 |
# File 'lib/flydata/command/sync.rb', line 857 def initialize(conf) password = conf['password'].to_s.empty? ? "" : "-p#{conf['password']}" tables = if conf['tables'] conf['tables'].split(',').join(' ') else '' end @dump_cmd = MYSQL_DUMP_CMD_TEMPLATE % [conf['host'], conf['port'], conf['username'], password, self.class::EXTRA_MYSQLDUMP_PARAMS, conf['database'], tables] @db_opts = [:host, :port, :username, :password, :database].inject({}) {|h, sym| h[sym] = conf[sym.to_s]; h} end |
Instance Method Details
#dump(file_path) ⇒ Object
868 869 870 |
# File 'lib/flydata/command/sync.rb', line 868 def dump(file_path) raise "subclass must implement the method" end |