Importar / Exportar Bases de datos grandes de MYSQL

Enviado por keopx el Jue, 23/07/2009 - 19:03

Sustituiremos [USERNAME] con el nombre de usuario de mysql, [DBNAME] con el nombre de la base de datos, [/path_to_file/DBNAME] con la ruta path y nombre del fichero para el volcado de la base de datos.

Copiar/Exportar base de datos grande

Vamos a crear una fichero comprimido con la base de datos:

mysqldump -u [USERNAME] -p [DBNAME] | gzip > [/path_to_file/DBNAME].sql.gz

Importar base de datos grande

Forma rápida:

gzip -dc [/path_to_file/DBNAME].sql.gz | mysql -u [USERNAME] -p [DBNAME]

O

gunzip -c [/path_to_file/DBNAME].sql.gz | mysql -u [USERNAME] -p [DBNAME]

Forma mas rustica: Primero descomprimimos la base de datos:

gzip -d [/path_to_file/DBNAME].sql.gz

Nos conectamos a mysql:

mysql -u [USERNAME] -p

Continuamos mostrando las base de datos, borramos, creamos, elegimos base de datos añadimos fichero:

SHOW DATABASES; DROP DATABASE [DBNAME]; CREATE DATABASE [DBNAME]; USE [DBNAME]; SOURCE [/path_to_file/DBNAME].sql;

Condiciones de volcado

Volcado con excepciones de tablas, en este caso búsquedas.

mysqldump -u [USERNAME] -p [DBNAME] --ignore-table=[DBNAME].index_busqueda | gzip > [/path_to_file/DBNAME].sql.gz

Creamos lo backup solo con las tablas sin informacion:

mysqldump -u [USERNAME] -p [DBNAME] --no-data | gzip > [/path_to_file/DBNAME].info.sql.gz

Creamos la copia incluyendo solo los datos de las tablas que necesitemos.

mysqldump -u [USERNAME] -p [DBNAME] --no-create-info --ignore-table=[DBNAME].search_index --ignore-table=[DBNAME].cache --ignore-table=[DBNAME].cache_block --ignore-table=[DBNAME].cache_content --ignore-table=[DBNAME].cache_filter --ignore-table=[DBNAME].cache_form --ignore-table=[DBNAME].cache_menu --ignore-table=[DBNAME].cache_mollom --ignore-table=[DBNAME].cache_page --ignore-table=[DBNAME].cache_pathdst --ignore-table=[DBNAME].cache_pathsrc --ignore-table=[DBNAME].cache_views | gzip > [/path_to_file/DBNAME].data.sql.gz;

Omitir aquellas tablas que contengas cache_:

mysqldump -u [USERNAME] -p [DBNAME] --no-create-info --ignore-table=[DBNAME].search_index --ignore-table=[DBNAME].cache% | gzip > [/path_to_file/DBNAME].data.sql.gz;

Eliminar las tablas, para realizar un import limpia:

mysqldump -u [USERNAME] -p [DBNAME] --add-drop-table | gzip > [/path_to_file/DBNAME].sql.gz

Categoria

Añadir nuevo comentario

El contenido de este campo se mantiene privado y no se mostrará públicamente.

HTML Restringido

  • Etiquetas HTML permitidas: <a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • Saltos automáticos de líneas y de párrafos.
  • Las direcciones de correos electrónicos y páginas web se convierten en enlaces automáticamente.