domingo, 2 de junio de 2013

Copiar una base de datos mysql desde php

Con este script vamos copiar una base de datos para tener los datos duplicados en caso de desgracia

<?php 
// Cambie el Origen & Destino de Base de Datos 
$source_db="db1"; 
$new_db="db2"; 
mysql_connect("localhost","root","");
mysql_select_db($source_db);
$result=mysql_query("show tables");
$table_names=array();
while($row=mysql_fetch_array($result)){
         $table_names[]=$row[0];
} 
mysql_query("create database $new_db");
mysql_select_db($new_db); 
for($i=0;$i<count($table_names);$i++){
mysql_query("create table ".$table_names[$i]."
select * from $source_db.".$table_names[$i]);
} 
echo count($table_names)." tablas correctamente copiadas!";
 
 
?>

1 comentario:

  1. las bases de datos no solo incluyen tablas, también hay indices, procedimientos almacenados, funciones, etc. Esto solo copia las tablas.

    ResponderEliminar