Restaurar base de datos grande

Jose Miguel Vidal lavin jmvidal en sertotal.cl
Lun Jun 4 11:46:59 CLT 2007


Rodrigo Escares wrote:
>
> Hola
>
>  
>
> Alguien sabe como puedo restaurar una base de datos mysql desde php?
>
>  
>
> Lo he intentado de tres formas
>
> 1-       Ejecutando el codigo directamente y me sale error por el ";" .
>
> 2-       Leyendo un archivo con el sql y posteriormente ejecutandolo 
> de una con el php
>
> 3-       Leyendo el archivo y ejecutando el comando exec("cat $archivo 
> | mysql --host=mysql --user=miuser --password=mipas midb"); 
>
>    Este último no funciona, ni me da ni un error y los anteriores 
> dice:  You have an error in your SQL syntax; check the manual that 
> corresponds to your MySQL server version for the right syntax to use 
> near '; CREATE TABLE `abuso_prueba` ( `idAbuso` int(10) unsigned NOT
>
>   Este ultimo error lo soluciono ejecutando la query por parte, por 
> ejemplo 1 el create table, despues de uno en uno los insert, pero l 
> abase es muy grande y no puedo estar modificando esto  siempre la idea 
> es que sea automatico.
>
>  
>
> Agradecería cualquier ayuda que me pudieran dar
>
>  
>
> Gracias
>
prueba haciendo un script en bash y luego lo ejecutas desde exec, el 
script seria algo asi

#!/bin/bash
mysqladmin -p drop database
mysqladmin -p create database
mysql -p database < datos.sql

obviamente hay que hacer ciertos ajustes de host y/o usuarios.

saludos


Más información sobre la lista de distribución PHP