| |||
Hacer Dump de BBDD desde un PHP Saludos amigos, quiero hacer una pagina PHP para que un cliente se pueda hacer una copia de sus bases de datos, es decir que pueda generarse un fichero sql como el que te puedes crear desde el MySqlAdmin cuando le das a la opcion de copiar " estructura y datos " ..... Help .... Help ... |
| ||||
Si el usuario de PHP tiene permiso para hacerlo, puedes utilizar exec() para ejecutar la línea desde shell. exec("mysqldump -opt base_de_datos > archivo.sql");
__________________ M a l d i t o F r i k i |
| |||
Mas ayuda .... sorry ... Hola .. soy yo de nuevo ... no veo como hacer para que el fichero resultante pueda guardarlo en PC ... he metido esto .. <BODY> <? include("../conexion.php"); exec("mysqldump -opt mibasedatos > archivo.sql"); ?> </BODY> lo ejecuto y no parece hacer nada .... seguro que me falta algo mas ... Gracias amigos ! |
| |||
He probado esto .... pero ... He encontrado este codigo del colega Gusa que pretendia hacer lo mismo ( una copia desde web y dejar el fichero en el PC ). Yo lo he probado pero me da un error que os pongo al final ... supongo que sera una tonteria ... pero no se ... CODIGO : <? $filename="respaldo.sql"; header("Content-type: application/force-download"); header("Content-Disposition: attachment; filename=$filename"); $usuario="PEPE"; $passwd="PAPA"; $bd="MIBASE"; $executa = "/usr/local/mysql/bin/mysqldump -u$usuario -p$passwd $bd"; system($executa, $resultado); if ($resultado) { echo "<H1>Error ejecutando comando: $executa</H1>\n"; } ?> RESULTADO : Warning: Cannot add header information - headers already sent by (output started at /home/opipres/.public_html/id1/prueba_02.php:12) in /home/opipres/.public_html/id1/prueba_02.php on line 18 Warning: Cannot add header information - headers already sent by (output started at /home/opipres/.public_html/id1/prueba_02.php:12) in /home/opipres/.public_html/id1/prueba_02.php on line 19 <H1>Error ejecutando comando: /usr/local/mysql/bin/mysqldump -uPEPE -pPAPA MIBASE</H1> |
| ||||
EL código que yo pongo está bien, lo que pasa es que no muestra resultados en pantalla, sino que crea un archivo en la dirección que especifiques en archivo.sql (ejemplo: /home/webs/material/lalala.sql)
__________________ M a l d i t o F r i k i |