/**
 * function for loading a database file into db specified in config.ini
 *
 * @param   array   options. You can specifiy a file to load in options.
 *                  e.g. <code>$options = array('File' => 'backup/sql/latest.sql')</code>
 * @return  int     the executed commands shell status 0 on success.
 */
function cos_db_load_table($options)
{
    if (!isset($options['table'])) {
        common::abort('Specify a table to load with a backup');
    }
    $dump_dir = "backup/sql/{$options['table']}";
    if (!file_exists($dump_dir)) {
        common::abort('Yet no backups');
    }
    $search = conf::pathBase() . "/backup/sql/{$options['table']}";
    $latest = get_latest_db_dump($search);
    if ($latest == 0) {
        common::abort('Yet no database dumps');
    }
    $latest = "backup/sql/{$options['table']}/" . $latest . ".sql";
    $db = admin::getDbInfo();
    if (!$db) {
        return db_no_url();
    }
    $command = "mysql --default-character-set=utf8  -u" . conf::$vars['coscms_main']['username'] . " -p" . conf::$vars['coscms_main']['password'] . " {$db['dbname']} < {$latest}";
    return $ret = common::execCommand($command);
}
Exemple #2
0
/**
 * function for loading a database file into db specified in config.ini
 *
 * @param   array   options. You can specifiy a file to load in options.
 *                  e.g. <code>$options = array('File' => 'backup/sql/latest.sql')</code>
 * @return  int     the executed commands shell status 0 on success.
 */
function load_db_file($options)
{
    if (!isset($options['File'])) {
        common::echoMessage('You did not specify file to load. We use latest!');
        $latest = get_latest_db_dump();
        if ($latest == 0) {
            common::abort('Yet no database dumps');
        }
        $latest = "backup/sql/" . $latest . ".sql";
        $file = $latest;
    } else {
        $file = $options['File'];
        if (!file_exists($file)) {
            common::abort("No such file: {$file}");
        }
    }
    $db = admin::getDbInfo(conf::getMainIni('url'));
    if (!$db) {
        return db_no_url();
    }
    $command = "mysql --default-character-set=utf8  -u" . conf::$vars['coscms_main']['username'] . " -p" . conf::$vars['coscms_main']['password'] . " -h{$db['host']}  {$db['dbname']} < {$file}";
    return $ret = common::execCommand($command);
}