/** * Create backup using native mysqldump * * Same signature as the core version. * * @param Mage_Backup_Model_Backup $backup * @return Mage_Backup_Model_Db */ public function createBackup(Mage_Backup_Model_Backup $backup) { $db = Mage::getResourceModel('sales/order')->getReadConnection()->getConfig(); $host = $db['host']; $user = $db['username']; $pass = $db['password']; $db = $db['dbname']; // Based on http://php.net/manual/en/function.system.php $cmd = sprintf('%smysqldump --opt -h %s -u %s -p%s %s | gzip > %s', $this->PATH_TO_MYSQLDUMP, $host, $user, $pass, $db, $backup->getPath() . DS . $backup->getFileName()); Mage::log("Running native backup command: {$cmd}"); system($cmd); Mage::log("Created backup natively"); }