PHP - respaldo de una base de datos

 
Vista:

respaldo de una base de datos

Publicado por noe velazquez (131 intervenciones) el 17/06/2018 01:11:02
hola foro !!!

esperando me puedan ayudar, y es con lo siguiente quiero hacer un respaldo de una base de datos y tengo el siguiente script

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?
    //phpinfo();
	$db_host = 'localhost';  //Host del Servidor MySQL
	$db_user = 'root';       //Usuario de MySQL
	$db_pass = '123';        //Password de Usuario MySQL
	$db_name = 'notbue_db';  //Nombre de la Base de datos
 
	$fecha = date("Ymd-His"); //Obtenemos la fecha y hora para identificar el respaldo
 
	// Construimos el nombre de archivo SQL Ejemplo: mibase_20170101-081120.sql
	$salida_sql = $db_name.'_'.$fecha.'.sql';
 
	//Comando para genera respaldo de MySQL, enviamos las variales de conexion y el destino
	$dump = "mysqldump --h$db_host -u$db_user -p$db_pass --opt $db_name > $salida_sql";
	system($dump, $output); //Ejecutamos el comando para respaldo
 
	$zip = new ZipArchive(); //Objeto de Libreria ZipArchive
 
	//Construimos el nombre del archivo ZIP Ejemplo: mibase_20160101-081120.zip
	$salida_zip = $db_name.'_'.$fecha.'.zip';
 
	if($zip->open($salida_zip,ZIPARCHIVE::CREATE)===true) { //Creamos y abrimos el archivo ZIP
		$zip->addFile($salida_sql); //Agregamos el archivo SQL a ZIP
		$zip->close(); //Cerramos el ZIP
		unlink($salida_sql); //Eliminamos el archivo temporal SQL
		header ("Location: $salida_zip"); // Redireccionamos para descargar el Arcivo ZIP
		} else {
		echo 'Error'; //Enviamos el mensaje de error
	}
?>
pero envia un mensaje
Class 'ZipArchive' not found
como puedo solucionarlo ?
Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 98
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

respaldo de una base de datos

Publicado por Rrazo (53 intervenciones) el 17/06/2018 03:19:02
Básicamente esta diciendo que te falta una librería, si mal no recuerdo, esa clase depende de la librería llamada php(version)-zip y dependiendo de donde estas trabajando tu aplicación, es la forma de instalarla,,, si lo estas haciendo en un servidor local puedes instalar directo desde una terminal, de lo contrario, si es un hosting puedes hacerlo desde CPanel u otro administrador que tenga el hosting.

Desde una terminal en un servidor local lo primero es que debes saber que versión de PHP estas usando y en base a eso instalar, por ejemplo en Debian/Ubutntu sería

sudo apt-get install php5.4-zip // Considerando que tuvieras una versión de PHP 5.4

despues reiniciar apache

sudo service apache2 restart
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar