我正在尝试通过以下方式恢复MySQL转储:
$file = '/path/to/file.sql';
exec('mysqldump -u '.DB_USER.' -p'.DB_PASS.' '.DB_NAME.' > '.$file);
上面按预期创建转储,然后恢复我正在尝试使用以下内容:
$file = '/path/to/file.sql';
exec('mysql -u '.DB_USER.' -p'.DB_PASS.' '.DB_NAME.' < '.$file);
但出于某种原因它没有做任何事情。
请注意,常量包含相关的数据库连接参数。
知道我做错了吗?
答案 0 :(得分:1)
使用mysql -e 'source $file'
代替重定向
答案 1 :(得分:0)
$file = realpath('file.sql');
exec('mysqldump -u ' . DB_USER . ' -p' . DB_PASS . ' ' . DB_NAME . ' > ' . $file);
或许试试这个。