Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/04/2012, 05:45
luisgzafra
 
Fecha de Ingreso: noviembre-2010
Mensajes: 1.242
Antigüedad: 14 años, 1 mes
Puntos: 73
Clonar tablas mysql y código que no funciona

Buenas, necesito clonar mediante php dos tablas en mysql, se me ocurrió que podría hacerlo así:

Código PHP:
Ver original
  1. $source_db = "bd1"; // Origen
  2.     $new_db = "db2"; // Destino
  3.    
  4.     $c = mysql_connect("localhost", "user", "***********");
  5.  
  6.     mysql_query("create database $new_db", $c);
  7.  
  8.     // Vieja
  9.     mysql_select_db($source_db, $c);
  10.  
  11.     $result = mysql_query("show tables", $c);
  12.  
  13.     $table_names = array();
  14.  
  15.     while ($row = mysql_fetch_array($result)) {
  16.  
  17.         $table_names[] = $row[0];
  18.  
  19.     }
  20.  
  21.     // Nueva
  22.     mysql_select_db($new_db, $c);
  23.    
  24.     $well = 0; // Las que salieron bien
  25.     $err = 0; // Las que salieron mal
  26.    
  27.     for ($i = 0; $i < count($table_names); $i++) {
  28.  
  29.         if(mysql_query("create table ".$table_names[$i]." select * from $source_db.".$table_names[$i], $c)) $well++;
  30.          else $err++;
  31.  
  32.     }

Esto crea la nueva db, clona las tablas pero falla al copiar estructura y datos. Solo crea la nueva db y las tablas (sin la estructura completa).

¿Cómo podría clonar 2 ddbbs en mysql desde php?

Saludos!
__________________
:)