Skip to content

BigDump: Importación segmentada de grandes bases de datos MySQL

febrero 19, 2009

Introducción

BigDump es un programa en PHP que sirve para importar grandes bases de datos MySQL cuando el servidor no nos permite importar archivos grandes y tampoco tenemos control sobre los parámetros del servidor.

¿phpMyAdmin sólo permite importar respaldos de hasta 8 Megabytes? ¿Qué se creen?

¿phpMyAdmin sólo permite importar respaldos de hasta 8 Megabytes? ¿Qué se creen?

BigDump.php funciona así: Lee un script .sql, o bien un script .sql.gz, y lo divide en varios scripts más pequeños que va ejecutando de manera secuencial.

Requisitos para usar bigdump.php

  1. Descargar el archivo bigdump.zip localizado en la sección Download de su página oficial.
  2. El (los) archivo(s) de respaldo con extensión .sql o .gz. creado(s) por phpMyAdmin.
  3. Cuenta para acceder a la base de datos MySQL.
  4. Cuenta para acceder a un servidor web con PHP 4.1.0, o superior, instalado. Es vital que ese servidor tenga acceso a la base de datos (lo que generalmente es cierto si el servidor web y la base de datos son proporcionados por el mismo proveedor de servicios de internet).
  5. Un editor de textos para modificar el archivo bigdump.php.
  6. Un cliente de FTP para subir archivos al servidor web.
  7. Algo de conocimiento sobre archivos, PHP, bases de datos MySQL, phpMyAdmin, FTP y HTTP.

Cómo usar BigDump

1. Abra el archivo bigdump.php con un editor de texto y ajuste los parámetros:

// Database configuration

$db_server   = 'miservidordedatos.com';
$db_name     = 'mibasededatos';
$db_username = 'misuario';
$db_password = 'micontraseña';

// Other settings (optional)

$filename         = 'respaldo.sql.gz';

...

$db_connection_charset 
= 'conjunto de caracteres (latin1, utf8, etc.)';

2. Si su script de respaldo no contiene instrucciones DROP TABLE, entre a phpMyAdmin y borre todas las tablas de la base de datos destino.

3. Cree carpeta de trabajo en el servidor web. La llamaremos /dump.

4. Con un cliente FTP suba al directorio de trabajo tanto el script bigdump.php como el script de respaldo. No olvide darle al script bigdump.php permisos públicos de ejecución y de lectura.

5. Con su navegador web (se recomienda IE o Firefox) ejecute el script bigdump.php con una URL como la siguiente: http://miservidorweb/dump/bigdump.php.

6. Seleccione la opción Start Import para iniciar la importación.

7. No cierre el navegador hasta que el script haya terminado.

8. Borre el directorio /dump si no quiere que cualquiera pueda descargar un archivo con los parámetros de acceso a su base de datos.

Cómo usar BigDump para importar parte de la base de datos

Tuve un problema a la hora de importar un respaldo de un sitio web hecho con Drupal: no quería importar las tablas del caché. Así es cómo lo resolví, añadiendo una línea al script bigdump.php:

$comment[]='INSERT INTO `cache';

De esta manera se crean las tablas cache, cache_pages, etc., pero sin datos ya que cada línea en el script SQL que comienza como INSERT INTO `cache es tratada como un comentario. Así, se pueden definir como comentarios las instrucciones para insertar datos en una o más tablas.

Más información:

5 comentarios leave one →
  1. marzo 15, 2010 2:52 pm

    y no hay algo parecido que haga la exportacion ???

  2. proteo2000 permalink*
    marzo 16, 2010 11:10 am

    c3sar:

    ¿Una exportación segmentada de bases de datos MySQL dices?

    Suena interesante, incluso pausible, pero tras una hora de búsqueda en Google no encontré nada parecido. Para empezar, la exportación segmentada es algo que el comando mysqldump y PHPMyAdmin no pueden hacer. Otras soluciones diseñadas para respaldar y restaurar bases de datos MySQL, tales como BackupNinja y Bacula, tampoco parecen tener esta característica.

    No C3sar, no encuentro nada parecido para hacer la exportación. Ojalá otro usuario experto nos de una mejor respuesta.

Trackbacks

  1. BigDump: Importación segmentada de grandes bases de datos MySQL - DbRunas
  2. ANOTACIONS » Importar fitxers grans de dades al mysql
  3. Import/Export datos con PHP y/o MySQL « Krcondo's Blog

Deja un comentario

Por favor, inicia sesión con uno de estos métodos para publicar tu comentario:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: