Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/05/2011, 12:35
arnet46
Usuario no validado
 
Fecha de Ingreso: junio-2008
Mensajes: 44
Antigüedad: 16 años, 5 meses
Puntos: 0
problema con el dump de mysql

hola chicos como andas?
Les comento que tengo un script el cual se encarga de hacer un backup de la BD en mysql utilizando mysqldump....
el problema que a veces me crea un archivo pero no escribe nada dentro o a veces ni me lo crea...
-----------------------------------------------------
Código PHP:
Ver original
  1. <?php
  2. $sql_host = "localhost";
  3. $sql_usuario = "root";
  4. $sql_pass = "";
  5. $sql_db = "sao";
  6. $fileNameMySqlDump = "backup";//nombre del fichero sql
  7.  
  8. $fileNameMySqlDump = date("Y.d.m-H.m.s")."-".$fileNameMySqlDump;//añado la fecha y la hora al nombre del fichero
  9.  
  10. $sysOperative = (stristr(PHP_OS, 'WIN')) ? "Windows" : "Linux";//compruebo el sistema operativo del servidor
  11.  
  12. $db_connect = mysql_connect($sql_host,$sql_usuario,$sql_pass) or die("MySQL dice: ".mysql_error());//conectamos con la base de datos
  13. mysql_select_db($sql_db) or die("MySQL dice: ".mysql_error());//seleccionamos la base de datos
  14.  
  15. switch ($sysOperative){//creo el selector de sistema operativo
  16.     case 'Windows'://servidores mysql montados en maquinas windows
  17.         $mySqlDump = "c:\xampp\mysql\bin\mysqldump.exe -u $sql_usuario --password=$sql_pass --opt $sql_db > $fileNameMySqlDump.sql";//ejecuto el backup
  18.         exec($mySqlDump, $resultMySqlDump);
  19.     break;
  20.     case 'Linux'://servidores mysql montados en maquinas linux
  21.         $mySqlDump = "mysqldump -u $sql_usuario --password=$sql_pass --opt $sql_db > $fileNameMySqlDump.sql";//ejecuto el backup
  22.         system($mySqlDump, $resultMySqlDump);
  23.     break;
  24.     default:
  25.         echo "Error 7000: Se produjo error por no ser un sistema compatible con Windows - Unix - Linux.";//si el sistema operativo no existe o no esta definido, error
  26.       exit;
  27.     break;
  28. }//termino switch
  29.  
  30. if($resultMySqlDump) {
  31.     echo "<H1>Error ejecutando comando: $executa</H1>\n";//compruebo errores
  32. }else{
  33.     echo "<H1>operacion exitosa: $fileNameMySqlDump</H1>\n";
  34. }
  35.  
  36. mysql_close($db_connect);//cerramos conexion mysql
  37. ?>

Espero que me puedan ayudar ya que lo necesito para la tesis.
Gracias

diego