Esse script fará a cópia completa do base de dados, ou seja, copiará a estrutura da base desejada no postgresql
$usuario="postgres";
$senha="*****";
$banco="meu_db";
$HOST="localhost";
$porta=5432;
$path_back="files/";
$cmd="PGPASSWORD=".$senha." pg_dump -i -h ".$HOST." -p ".$porta." -U ".$usuario." -F c -b -v -f '".$path_back.$banco.".sql' ".$banco;
// Executa o comando pg_dump que esta na variável cmd
shell_exec($cmd);
// Compacta o arquivo gerado pelo camando para tar.gz
shell_exec("tar -zcf ".$path_back.$banco.date("Ymd").".tar.gz ".$path_back."*");
// As linhas abaixo forçam o download do arquivo
$link = $path_back.$banco.date("Ymd").".tar.gz";
header ("Content-Disposition: attachment; filename=".$banco.date("Ymd").".tar.gz");
header ("Content-Type: application/octet-stream");
header ("Content-Length: ".filesize($link));
readfile($link);
// Apaga o arquivo gerado
shell_exec("rm -rf ".$path_back."*");
É isso ai, caso tenha alguma dúvida é só posta-la para que possamos ajudar.
Até a próxima.
Nenhum comentário:
Postar um comentário