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
Comentarios