Не работает бекап БД
Всем добрый день. Написал скрипт бекапа баз данных но он почему то не работает. Кто может помочь разобраться ?
// Тут подключение к базе
$user_mysql = 'admin';
$pass_mysql = '12345';
$tmp_path = $_SERVER['DOCUMENT_ROOT'].'/uploads/damp/';
#функция выводит в массив список баз данных
function get_database_tables()
{
$ret = array();
$r = mysql_query('SHOW DATABASES');
if (mysql_num_rows($r)>0)
{
while($row = mysql_fetch_array($r, MYSQL_NUM))
{
$ret[] = $row[0];
}
}
return $ret;
}
$h=array();#В этом массиве бум хранить список бд
$h=get_database_tables();#Заполняем его именами баз данных
$vsego=count($h);#Узнаем, сколько именно баз в массиве
$exс=array('information_schema', 'mysql', 'performance_schema', 'phpmyadmin');
for ($x=0; $x < $vsego; $x++){
$bd=$h[$x];
#И сделаем их дамп
if(!in_array($bd, $exс)){
exec('mysqldump -u '.$user_mysql.' -p'.$pass_mysql.' --opt '.$bd.' > ' . $tmp_path . $bd . '.sql');
}
}
Скрипт работает но создает пустые файлы с именами баз данных.
Источник: Stack Overflow на русском