Foros del Web » Programando para Internet » PHP »

BackUp MySQL

Estas en el tema de BackUp MySQL en el foro de PHP en Foros del Web. Wenas a Todos !! He Visto en script del Tipo PHP Nuke, que hay un boton que haces click y directamente te sale para descargar ...
  #1 (permalink)  
Antiguo 14/04/2006, 14:46
 
Fecha de Ingreso: septiembre-2005
Mensajes: 840
Antigüedad: 18 años, 7 meses
Puntos: 84
BackUp MySQL

Wenas a Todos !!

He Visto en script del Tipo PHP Nuke, que hay un boton que haces click y directamente te sale para descargar una copia de seguridad de la base de datos.

Ya que estoy haciendo un script que no tiene nada que ver con PHP Nuke, esa funcion no la tengo pero me interesaria muxo.

Alguien sabe el codigo ?

Muchas Gracias !
  #2 (permalink)  
Antiguo 14/04/2006, 15:15
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
pos podés probar un sistema tipo phpMyAdmin.....
  #3 (permalink)  
Antiguo 14/04/2006, 15:26
 
Fecha de Ingreso: septiembre-2005
Mensajes: 840
Antigüedad: 18 años, 7 meses
Puntos: 84
Justo lo que quiero es no tener q entrar al PHP My Admin para piyar el backup
  #4 (permalink)  
Antiguo 14/04/2006, 15:50
Avatar de turco_7  
Fecha de Ingreso: diciembre-2003
Ubicación: Córdoba, Argentina
Mensajes: 1.044
Antigüedad: 20 años, 4 meses
Puntos: 19
mira .. esto lo tenia funcionando en un servidor local de una intranet ...

Código PHP:
<?
$filename 
date("Ymd-Hi"); 
$filename $filename.".sql";
header("Pragma: no-cache"); 
header("Expires: 0"); 
header("Content-Transfer-Encoding: binary"); 
header("Content-type: application/force-download"); 
header("Content-Disposition: attachment; filename=$filename");
$usuario="root";
$passwd="";
echo 
$filename;
$bd="base_de_datos";
$executa "c:\\wamp\\mysql\\bin\\mysqldump.exe -u $usuario --password=$passwd --opt $bd";
system($executa$resultado); 
?>
Si tu servidor es linux/unix deberias cambiar esta linea
Código PHP:
<?$executa "c:\\wamp\\mysql\\bin\\mysqldump.exe -u $usuario --password=$passwd --opt $bd";?>
por esta otra ..
Código PHP:
<?
$executa 
"/bin/mysql/mysqldump -u $usuario --password=$passwd --opt $bd";
?>
una cosa asi no exactamente donde esta ubicada la aplicacion dump, en todo caso te tendrias que fijar si es que tenes permisos para ejecutar ese archivo...

si no me equivoco existen otras formas de hacer esto .. espero que te sirva saludos...
__________________
Mi Blog http://turco7.blogspot.com
Usuario Linux : 404289
Mi última página: http://www.digitalservicecba.com.ar - Reparacion de camaras digitales!
  #5 (permalink)  
Antiguo 15/04/2006, 12:23
 
Fecha de Ingreso: abril-2006
Mensajes: 119
Antigüedad: 18 años
Puntos: 0
hola.... mira yo uso este... que lo posteo MDK hace mucho tiempo

Cita:
<?
// Nombre del archivo de con el cual queremos que se guarde la base de datos
$filename = "fichero.sql";
// Cabezeras para forzar al navegador a guardar el archivo
header("Pragma: no-cache");
header("Expires: 0");
header("Content-Transfer-Encoding: binary");
header("Content-type: application/force-download");
header("Content-Disposition: attachment; filename=$filename");

$usuario="usuario"; // Usuario de la base de datos, un ejemplo podria ser 'root'
$passwd="contraseña"; // Contraseña asignada al usuario
$bd="base_de_datos"; // Nombre de la Base de Datos a exportar

// Funciones para exportar la base de datos
$executa = "c:\\mysql\\bin\\mysqldump.exe -u $usuario --password=$passwd --opt $bd";
system($executa, $resultado);

// Comprobar si se a realizado bien, si no es asi, mostrará un mensaje de error
if ($resultado) { echo "<H1>Error ejecutando comando: $executa</H1>\n"; }

?>
Lo unico. que cuando vayas a restaurar la base de datos... al archivo sql tenes que borrarlo todos los tags html... bah por lo menos... a mi me los escribe pero no importa.... me restaura todo...
  #6 (permalink)  
Antiguo 18/04/2006, 03:03
 
Fecha de Ingreso: septiembre-2005
Mensajes: 840
Antigüedad: 18 años, 7 meses
Puntos: 84
Hay alguna forma de hacerlo si el System() esta desactivado ?
  #7 (permalink)  
Antiguo 18/04/2006, 04:46
Avatar de turco_7  
Fecha de Ingreso: diciembre-2003
Ubicación: Córdoba, Argentina
Mensajes: 1.044
Antigüedad: 20 años, 4 meses
Puntos: 19
maurozone el codigo que publicaste es el mismo que puse yo ...
yo tambén lo saque de aca ...
si el system esta desactivado nose como lo podras hacer, seria conveniente que te comuniques con tu proveedor .. saludos...
__________________
Mi Blog http://turco7.blogspot.com
Usuario Linux : 404289
Mi última página: http://www.digitalservicecba.com.ar - Reparacion de camaras digitales!
  #8 (permalink)  
Antiguo 15/05/2006, 16:10
Avatar de tognaco  
Fecha de Ingreso: noviembre-2004
Mensajes: 147
Antigüedad: 19 años, 5 meses
Puntos: 1
Perdonad mi ignorancia, pero ¿dónde se guardaría el archivo creado? Y otra pregunta más ¿la idea sería programar el cron para que hiciese esto cada x tiempo?

Gracias anticipadas.
  #9 (permalink)  
Antiguo 17/05/2006, 05:14
Avatar de tognaco  
Fecha de Ingreso: noviembre-2004
Mensajes: 147
Antigüedad: 19 años, 5 meses
Puntos: 1
Ya conseguí que funcione, pero lo encuentro poco operativo porque hay que hacerlo manualmente, y eso termina uno por olvidar hacerlo (y generalmente en el momento más inapropiado). La idea buen sería:

1º Que el archivo se guardase directamente en un directorio del servidor escogido por el administrador del sistema
2º Ejecutar el archivo mediante el cron con la periodicidad que se quiera

¿Sería eso posible? ¿Sabéis como hacerlo? Gracias anticipadas.
  #10 (permalink)  
Antiguo 09/10/2006, 19:22
 
Fecha de Ingreso: enero-2006
Ubicación: Valencia
Mensajes: 96
Antigüedad: 18 años, 2 meses
Puntos: 1
Hola,
pues yo ando buscando lo mismo, he encontrado el siguiente código que supuestamente guarda el fichero .sql en el servidor aunque en las primeras pruebas a mi no me lo hace.

Copia seguridad MySQL
Código que permite copiar y restaura una BBDD MySQL. La copia de la BBDD se genera en un fichero para que el Administrador del sitio se lo descargue en su equipo cliente.
http://www.lawebdelprogramador.com/c...d=71&texto=PHP

A ver si entre todos sacamos este preciado código que me extraña que no esté por aquí, ya que php-nuke lo lleva integrado aunque a mi tampoco me funcionaba correctamente, pero hacía justamente lo que andamos buscando.

Saludos
  #11 (permalink)  
Antiguo 18/10/2006, 09:36
Avatar de Rumailster  
Fecha de Ingreso: enero-2006
Ubicación: Barakaldo, Bizkaia
Mensajes: 92
Antigüedad: 18 años, 3 meses
Puntos: 0
Quizas no hayais especificado bien la variable $conexion; ???
__________________
Sobre PHP y eso de la Internet
peachep.wordpress.com
  #12 (permalink)  
Antiguo 12/11/2006, 10:30
Avatar de -Defero-
Colaborador
 
Fecha de Ingreso: julio-2004
Ubicación: Guipúzcoa
Mensajes: 4.776
Antigüedad: 19 años, 9 meses
Puntos: 76
¡Buenas tardes!

Yo tengo el mismo problema que miSKo:

Cita:
Iniciado por miSko Ver Mensaje
Hay alguna forma de hacerlo si el System() esta desactivado ?
No me sirve el código, porque System() está desactivado. He encontrado otro modo de hacerlo, pero no sé por qué, no me funciona. ¿Alguien conoe la solución?
__________________
abogado en Errenteria + procuradora en San Sebastián = equipo imparable
  #13 (permalink)  
Antiguo 12/11/2006, 13:15
Avatar de turco_7  
Fecha de Ingreso: diciembre-2003
Ubicación: Córdoba, Argentina
Mensajes: 1.044
Antigüedad: 20 años, 4 meses
Puntos: 19
mmmm no lo he probado .. pero asi como se deberia funcionar ..

probaste cambiando los permisos de escritura para poder hacer esto

$backupFile = 'backup/mypet.sql';

??? saludos !!!!
__________________
Mi Blog http://turco7.blogspot.com
Usuario Linux : 404289
Mi última página: http://www.digitalservicecba.com.ar - Reparacion de camaras digitales!
  #14 (permalink)  
Antiguo 12/11/2006, 13:46
Avatar de -Defero-
Colaborador
 
Fecha de Ingreso: julio-2004
Ubicación: Guipúzcoa
Mensajes: 4.776
Antigüedad: 19 años, 9 meses
Puntos: 76
Gracias por la ayuda, pero ya he encontrado otra solución.
__________________
abogado en Errenteria + procuradora en San Sebastián = equipo imparable
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 12:21.