Skip to content

Instantly share code, notes, and snippets.

@AEROGU
Created January 6, 2026 05:53
Show Gist options
  • Select an option

  • Save AEROGU/242a66d5f3ba17d5069e5bc145c98b16 to your computer and use it in GitHub Desktop.

Select an option

Save AEROGU/242a66d5f3ba17d5069e5bc145c98b16 to your computer and use it in GitHub Desktop.
Restore multiple dumps (mysqldump) *.sql files with no "create database" statement.
#!/bin/bash
# Configuración de usuario (cambia según tu caso)
USER="tu_usuario"
PASS="tu_contraseña"
for file in *.sql; do
# 1. Extrae el nombre de la base de datos de la línea que dice "Database: ..."
db_name=$(grep -m 1 "Database:" "$file" | awk '{print $NF}')
if [ -z "$db_name" ]; then
echo "No se encontró el nombre de la base de datos en $file. Saltando..."
continue
fi
echo "Procesando $db_name desde $file..."
# 2. Crea la base de datos
mysql -u $USER -p$PASS -e "CREATE DATABASE IF NOT EXISTS \`$db_name\`;"
# 3. Importa el archivo a esa base de datos
mysql -u $USER -p$PASS "$db_name" < "$file"
echo "¡Finalizado: $db_name restaurada!"
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment