Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   MySQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=21)
-   -   Problema al restaurar BD (https://www.clubdelphi.com/foros/showthread.php?t=79750)

vicvil 07-08-2012 18:16:18

Problema al restaurar BD
 
Estimados,

Tengo un respaldo de una BD MySql con tablas InnoDB realizado con Mysqldump de la siguiente manera:

cNomBackup:= '/c mysqldump --skip-opt --add-drop-table --single-transaction --quick --user=XXX --password=xxxxx --databases archivo > ' + 'C:\Respaldo\Respaldo.sql';

luego llamo la funcion:

ShellExecute(handle,'open', 'cmd.exe', PChar(cNomBackup),nil, SW_SHOWMINNOACTIVE);

El respaldo se crea sin problema.
Pero cuando quiero restaurar dicho respaldo, parece que lo hiciera pero cuando veo la BD no ha cambiado en nada, es decir sigue la que estaba antes de restaurar.
Para recuperar hago lo siguiente:

cNomBackup:= '/c mysqldump --user=XXX --password=xxxxx --databases archivo < C:\Respaldo\Respaldo.sql';

ShellExecute(handle,'open', 'cmd.exe', PChar(cNomBackup) ,nil, SW_SHOW );

Esta misma forma lo hago directamente a traves de D.O.S y tambien hace el proceso sin problema pero cuando veo la base de datos sigue estando la anterior, es decir, no varió en nada.
Alguien puede decirme en que estoy fallando????

roman 07-08-2012 18:19:37

Pero para restaurar el respldo debes usar mysql y no mysqldump.

// Saludos

vicvil 07-08-2012 18:54:53

Estimado Roman

Hice la prueba desde D.O.S con Mysql de la siguiente manera

mysql --user=XXX --pasword=xxxxx < C:\Respaldo\Respaldo.sql

pero me envía un error, que es el siguiente

"ERROR 1064 (42000) al line 1:You have an error in your SQL syntax;....."

y me arroja debajo de este error, la primera línea del respaldo, es decir:

\*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENTE */

¿alguna idea?

roman 07-08-2012 19:11:25

Ni idea. Es muy raro. Si el respaldo (mysqldump) y la restauración (mysql) los haces con la misma versión de mysql, no debería haber ningún problema.

// Saludos

vicvil 09-08-2012 17:02:45

cuando se crea el respaldo se crea de esta manera:

LOCK TABLES `empresa` WRITE;
/*!40000 ALTER TABLE `empresa` DISABLE KEYS */;
INSERT INTO `empresa` VALUES ('11111','XXX LTDA.','','','','','','','','');
/*!40000 ALTER TABLE `empresa` ENABLE KEYS */;
UNLOCK TABLES;

Si utilizo el Mysql Query Browser y pongo solo la parte

INSERT INTO `empresa` VALUES ('11111','XXX LTDA.','','','','','','','','');

lo hace sin problema, parece que algo pasa con la parte

LOCK TABLES `empresa` WRITE;
/*!40000 ALTER TABLE `empresa` DISABLE KEYS */;

roman 09-08-2012 17:20:24

Los respaldos de mysqldump y de mysqlbrowser (en realidad te refieres a mysql administrator, ¿no?) no son compatibles.

// Saludos

vicvil 09-08-2012 17:58:55

Estimado, ya me habia dado cuenta de eso, solo queria indicar que por un lado no lo acepta y por otro si.
¿Será que la versión de Mysql que tengo tiene una pifia? No lo creo, pero quien sabe!!!
La versión que tengo es la 5.0
Estoy mas metido que colales de luchador de sumo!!!!


La franja horaria es GMT +2. Ahora son las 21:39:18.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi