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 schemamysql -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 USEmysql -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.
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.