Resumen

Aprende a cargar de forma segura y eficiente grandes volúmenes en MySQL usando la terminal. Separar schema y datos, aprovechar la redirección con < y usar -D para elegir la base correcta te ahorra tiempo y errores. Aquí verás el flujo real: preparar archivos, importar desde shell y validar con consultas de verificación.

¿Cómo preparar el schema y los datos en archivos .sql?

Organiza el trabajo en dos archivos: uno para el schema y otro para los datos. Así puedes reconstruir y poblar la base con control total.

¿Qué contiene all_schema y por qué el drop requiere cuidado?

El archivo de schema incluye: borrar la base existente, crearla, usarla y crear tablas como autores, libros, clientes y transacciones. Hay una advertencia clave: borrar sin preguntar. Usa comentarios con -- si quieres desactivar la línea peligrosa.

  • Instrucciones típicas: crear y usar la base, luego crear tablas.
  • Comentarios con -- para documentar y desactivar líneas peligrosas.
  • Precaución extrema con borrar la base existente.

Ejemplo de ejecución desde shell con redirección:

mysql -u root -p < all_schema.sql

¿Qué incluye all_data y cuántos registros carga?

El archivo de datos trae los INSERT para autores, libros, clientes y transacciones. Se mencionan cifras útiles para validar:

  • Clientes: 100 registros aleatorios.
  • Autores: 132 al finalizar la importación.
  • Libros: 197 al finalizar la importación.

¿Cómo importar archivos a MySQL desde la terminal con redirección?

La importación se hace enviando el archivo al standard input de MySQL usando el operador <. Esto pertenece a la línea de comandos de Unix, no a MySQL.

¿Qué comando usar con -u, -p y el operador <?

Primero, importa el schema. La contraseña se solicita después de -p y no es recomendable escribirla en la misma línea.

# importar el schema
mysql -u root -p < all_schema.sql
  • -u: usuario, aquí root para simplificar la demostración.
  • -p: solicitar contraseña de forma segura.
  • <: redirige el contenido del archivo al proceso de MySQL.

¿Para qué sirve -D cuando el script no hace USE?

Si el archivo de datos comienza con INSERT y no especifica USE, MySQL no sabe qué base usar. Solución: indicar la base con -D.

# importar los datos cuando el archivo no incluye USE
mysql -u root -p -D <base_de_datos> < all_data.sql
  • -D: define la base activa para ejecutar los INSERT.
  • Error esperado si la base no existe: "Unknown database".

¿Por qué el operador < es de la línea de comandos de Unix?

Porque < toma un archivo de texto y lo envía al standard input del proceso. MySQL solo recibe el flujo y lo ejecuta. Esta técnica es simple y muy poderosa para cargas grandes.

  • Ventaja: ejecutar scripts completos sin copiar y pegar.
  • Requisito: archivos bien formados y con sintaxis correcta.

¿Qué verificar tras la carga y por qué el select es el rey?

Después de importar, confirma que la base existe, que las tablas están creadas y que los datos llegaron. Luego empieza el análisis con SELECT.

¿Qué consultas confirman la carga: show y select?

Secuencia de verificación dentro de MySQL:

SHOW DATABASES;
USE <base_de_datos>;
SHOW TABLES;
SELECT * FROM authors;
SELECT * FROM books;
  • Confirmación útil: autores 132 registros. libros 197 registros.
  • También puedes revisar clientes y transacciones.

¿Qué sigue: potenciar select?

El SELECT permite más que "traer todo". Tiene suficientes detalles y herramientas para ser el protagonista del análisis. Se anunció que será el foco inmediato: combinaciones, filtros y más, paso a paso.

  • Validar y explorar con SELECT * como primer diagnóstico.
  • Prepararse para consultas más potentes en la siguiente parte.

Si te interesa, comenta cómo organizas tus archivos .sql y qué estrategia usas para validar cargas masivas desde la terminal.