Divisor SQL: divide y comprime archivos SQL
¿Tu archivo SQL es demasiado grande para importarlo en phpMyAdmin? SQL Splitter lo comprime como .sql.gz o lo divide entre instrucciones completas en partes de menos de 1,9 MB; por ejemplo, community-db.sql con 98 KB pasa a ocupar 20 KB como .sql.gz. Gratis, sin registrarte y sin subir archivos: tu archivo permanece en el navegador.
Creado por Justin Schuessler
En tu propio VPS puedes importar dumps grandes desde la consola, sin el límite de subida de phpMyAdmin.
Tu archivo permanece en tu navegador: no se sube ni se guarda.
Resultado de ejemplo
Así divide un volcado el SQL Splitter
Primero, la herramienta comprueba si el archivo comprimido ya está por debajo de tu límite. Si no, lo divide entre sentencias completas y añade la cabecera del volcado a cada parte. El ejemplo usa un pequeño volcado de mysqldump con un tamaño objetivo de 40 KB para generar varias partes; tus resultados dependerán de tu archivo.
Ejemplo · Entrada: community-db.sql, 98 KB, 56 sentencias, 2 tablas, trigger, procedimiento y vista
- Archivo SQL
- 98 KB
- Como .sql.gz
- 20 KB
- 4,9 veces más pequeño
- Partes por debajo de 40 KB
- 3
- Se han encontrado problemas de importación
- 9
- DEFINER, CREATE DATABASE/USE, intercalación de MySQL 8
community-db-part-001.sql 28 KB 17 Sentencias players, scorescommunity-db-part-002.sql 40 KB 3 Sentencias scorescommunity-db-part-003.sql 32 KB 18 Sentencias scoresPor qué esta herramienta
Un SQL Splitter cuyas partes sí se pueden importar
Muchos divisores cortan por líneas o megabytes y fragmentan triggers, procedimientos o registros. Este lee el volcado como el cliente mysql.
Primero comprime, luego divide
Los dumps SQL contienen mucho texto repetido y, al comprimirlos como .sql.gz, suelen ocupar mucho menos; phpMyAdmin los importa directamente. La herramienta calcula primero el tamaño comprimido. Si queda por debajo de tu límite, no necesitas dividir el archivo.
Solo divide entre sentencias completas
El analizador reconoce cadenas con caracteres escapados, comentarios con --, # y /* */, las líneas /*!40101 … */ de mysqldump y los bloques DELIMITER. Un punto y coma dentro de una cadena o un bloque DELIMITER no separa instrucciones.
Los INSERT grandes se dividen por filas
Si un INSERT con muchas filas supera el tamaño de una parte, se divide en varios INSERT con la misma cabecera, siempre entre dos registros. Si un registro individual es demasiado grande, se indica su número y su tabla.
Cada parte se puede importar por separado
El juego de caracteres, el modo SQL, la zona horaria y la desactivación de las claves foráneas de la cabecera del volcado se incluyen en cada parte; al final, se restablece todo. También se conservan el USE activo y DELIMITER.
Correcciones de importación mediante casillas
DEFINER, CREATE DATABASE y USE, intercalaciones de MySQL 8 y líneas de replicación: la herramienta muestra cuántas veces aparecen y solo modifica lo que marques. También puedes aplicar las correcciones sin dividir el archivo.
Funciona en el navegador, incluso con cientos de MB
Los volcados suelen contener datos de clientes. El archivo se procesa por streaming en un Web Worker y no sale de tu equipo. Puedes ver el progreso y cancelar el proceso sin que la pestaña se bloquee.
Cómo funciona
Cómo importar un archivo SQL grande en tres pasos
Del volcado demasiado grande a la base de datos lista, sin cuenta ni subidas.
Paso 1
Cargar archivo SQL
Arrastra el archivo .sql, .sql.gz o .zip al recuadro. La herramienta lo lee en el navegador, cuenta las sentencias y tablas y busca problemas de importación habituales.
Paso 2
Comprimir o dividir
Elige el límite de subida: phpMyAdmin 2 MB, 8 MB o un valor personalizado. Si el archivo .sql.gz no supera ese límite, descargas un único archivo. De lo contrario, la herramienta lo divide en fragmentos inferiores al tamaño elegido (con 2 MB, como máximo 1,9 MB), que puedes descargar por separado o como ZIP, con correcciones de importación si quieres.
Paso 3
Importar en phpMyAdmin
Selecciona la base de datos a la izquierda, abre la pestaña Importar, elige el archivo y pulsa OK. Si hay varias partes, impórtalas una tras otra, empezando por la parte 1. También puedes copiar una parte y pegarla en la pestaña SQL.
Mensajes de error
Por qué falla la importación en phpMyAdmin y cómo solucionarlo
Los mensajes más frecuentes al importar un archivo SQL y el paso correspondiente en la herramienta.
La importación se bloquea en «Por favor, espere, se está procesando el archivo».
Causa: El archivo supera el límite de subida de phpMyAdmin (en nuestro caso, 2 MB, indicado como «Tamaño máximo: 2.048 KiB»). phpMyAdmin 5.2 suele no mostrar ningún error y el indicador simplemente sigue girando. Según la configuración del servidor, puede aparecer «No se han recibido datos para importar».
Solución: Súbelo como .sql.gz. Si sigue siendo demasiado grande, divídelo e importa las partes una tras otra.
«Parece que se ha perdido la conexión con el servidor» en la pestaña SQL
Causa: El texto pegado es demasiado grande. El navegador lo envía codificado: los espacios y caracteres especiales ocupan el triple, y los saltos de línea, seis veces más. Así, 1,9 MB de texto pueden superar rápidamente los 2 MB.
Solución: Selecciona «Pegar en la consola SQL» en la herramienta: así, las partes también quedan por debajo del límite una vez codificadas.
#1227 Access denied; you need (at least one of) the SUPER privilege(s)
Causa: Las vistas, los triggers o los procedimientos incluyen DEFINER con un usuario del servidor antiguo. MariaDB llama a este permiso SET USER; para SQL_LOG_BIN de los volcados de MySQL, se llama BINLOG ADMIN.
Solución: Marca las correcciones «Eliminar DEFINER» y, para volcados de MySQL, «Eliminar líneas de replicación».
#1273 Unknown collation: 'utf8mb4_0900_ai_ci'
Causa: El dump procede de MySQL 8. MariaDB no admite esta intercalación, ni siquiera en la versión 11.6.
Solución: Marca la corrección «Sustituir intercalaciones de MySQL 8».
#1193 Unknown system variable 'GTID_PURGED'
Causa: El volcado procede de un servidor MySQL con replicación GTID. Esta línea solo existe en MySQL.
Solución: Marca la corrección «Eliminar líneas de replicación».
#1044 Access denied for user … to database …
Causa: El volcado crea una base de datos propia con CREATE DATABASE o cambia con USE a una a la que tu usuario no tiene acceso.
Solución: Marca la corrección «Eliminar CREATE DATABASE y USE» y selecciona antes la base de datos correcta a la izquierda.
#1452 Cannot add or update a child row: a foreign key constraint fails
Causa: Una parte inserta datos cuyas filas relacionadas no llegan hasta una parte posterior.
Solución: La herramienta desactiva la comprobación de claves foráneas en cada parte. Aun así, importa las partes en orden.
#1050 Table already exists o #1062 Duplicate entry
Causa: Se ha importado dos veces una parte, a menudo después de una interrupción.
Solución: No empieces desde cero: continúa con la parte en la que se interrumpió la importación. Si tienes dudas, vacía la base de datos y vuelve a empezar.
La opción adecuada
¿Comprimir, dividir o usar otra herramienta?
Dividirlo no siempre es la mejor solución. Así puedes decidirlo en un minuto.
Ruta 1
Comprimir (.sql.gz)
La opción más rápida si el archivo comprimido está por debajo del límite: un archivo, una importación y ningún cambio.
Ruta 2
Dividir con este SQL Splitter
Si incluso el .sql.gz es demasiado grande y solo dispones de phpMyAdmin. Requiere varias subidas, pero ningún software adicional.
Ruta 3
HeidiSQL u otro cliente de bases de datos
Para volcados muy grandes o registros individuales que superan el límite. El cliente se conecta directamente a la base de datos, sin límite de subida. En Windows: Archivo, Ejecutar archivo SQL.
Ruta 4
Cliente mysql en la consola
Si tienes un VPS o acceso SSH: mysql -u benutzer -p datenbank < dump.sql importa el archivo sin el límite de subida de phpMyAdmin; para un archivo .gz, usa zcat.
Descubrir más
Más herramientas
Comparar textos online (Diff Checker)
Compara textos online: compara dos textos, configuraciones o versiones de código, ve las diferencias por línea y palabra y cópialas como Unified Diff. Funciona íntegramente en el navegador.
Creado por Dimitri Heissler
Generador de hashes (MD5, SHA-1, SHA-256, SHA-512)
NuevoGenera hashes MD5, SHA-1, SHA-256 y SHA-512 a partir de texto o archivos y compara sumas de verificación. Funciona íntegramente en el navegador.
Creado por Luca Stanek
Generador y verificador Bcrypt
Genera y comprueba hashes Bcrypt directamente en tu navegador, con un factor de coste ajustable.
Creado por Rugile Rutkauskaite
Convertidor de JSON a CSV
Convierte JSON a CSV y CSV a JSON: aplana objetos anidados, detecta el delimitador, genera CSV para Excel con BOM y obtén una vista previa en tabla de archivos JSON y CSV. Funciona íntegramente en el navegador.
Creado por Dimitri Heissler
Generador de .htaccess y generador de htpasswd
Crea archivos .htaccess y .htpasswd para Apache en línea: redirecciones 301, HTTPS, protección con contraseña bcrypt, reglas de WordPress, páginas de error, caché, GZIP y protección contra hotlinking. Funciona íntegramente en el navegador.
Creado por Dimitri Heissler
Formateador de SQL online (formatea y mejora tu SQL)
Formatea, mejora y minimiza SQL online para MySQL, MariaDB y PostgreSQL, con opciones de sangría y mayúsculas para las palabras clave. Funciona íntegramente en el navegador, sin subir archivos.
Creado por Luca Stanek
FAQ
Preguntas frecuentes
Respuestas breves sobre importaciones de phpMyAdmin, volcados SQL y este divisor SQL.
Obtienes un .sql.gz que phpMyAdmin importa directamente o varios archivos .sql, cada uno por debajo de tu límite, disponibles por separado y en un ZIP. Si quieres, también en formato .sql.gz y como texto para copiar. community-db.sql de 98 KB ocupa 20 KB como .sql.gz; al dividirlo con un tamaño objetivo de 40 KB, se generan 3 partes, cada una con la cabecera del volcado y en el orden en que debes importarlas. La herramienta muestra además el tamaño, las sentencias y las tablas de cada parte.
phpMyAdmin recibe los archivos a través de PHP, que limita el tamaño de las subidas (upload_max_filesize y post_max_size). En nuestros servidores de bases de datos, el límite es de 2 MB; phpMyAdmin lo muestra en Importar como «Tamaño máximo: 2.048 KiB». El texto que pegas en la pestaña SQL también está sujeto a ese límite. Por eso, la herramienta incluye el modo «Pegar en la consola SQL»: calcula el tamaño que el navegador envía realmente y crea fragmentos más pequeños según corresponda.
A menudo, sí. El límite se aplica al archivo que subes, es decir, al comprimido, y los volcados SQL contienen mucho texto repetido. phpMyAdmin descomprime los archivos .sql.gz al importarlos. El divisor de SQL calcula primero el tamaño del archivo .sql.gz, te muestra cuánto más pequeño es y solo recomienda dividirlo si el archivo comprimido sigue superando tu límite.
Carga el archivo .sql, .sql.gz o .zip en SQL Splitter; por ejemplo, una exportación de mysqldump, mariadb-dump, phpMyAdmin, HeidiSQL o Adminer. Solo se divide entre instrucciones completas: la herramienta reconoce cadenas con caracteres escapados, comentarios, líneas /*!…*/ y bloques DELIMITER de triggers y procedimientos; un punto y coma dentro de ellos no separa instrucciones. Si un INSERT de muchas filas supera el tamaño de una parte, se divide entre registros en varios INSERT con la misma cabecera. Si un solo registro supera el tamaño objetivo, normalmente por una imagen en una columna BLOB, la herramienta indica el número de instrucción, la línea y la tabla. Importa esa parte con HeidiSQL o el cliente mysql, o intenta subirla como .sql.gz.
Impórtalas por orden numérico, empezando por la parte 1, y todas en la misma base de datos. La parte 1 suele contener las instrucciones CREATE TABLE; las posteriores rellenan las tablas. Si el dump tiene claves foráneas, cada parte desactiva su comprobación al principio y vuelve a activarla al final. Si falla una parte, corrige el error y continúa con esa misma parte. No vuelvas a importar las anteriores o aparecerá «Table already exists» o «Duplicate entry». Si ya no sabes qué se ha importado, vacía la base de datos (en la pestaña Estructura de phpMyAdmin, selecciona todas las tablas y elimínalas) y vuelve a empezar por la parte 1.
Las vistas, los triggers, los procedimientos y los eventos guardan el usuario con el que se ejecutan (DEFINER). Si figura un usuario del servidor anterior, como root, tu usuario de base de datos no podrá crearlos. Marca «Eliminar DEFINER» en la herramienta para que el servidor los cree con tu usuario. MariaDB llama SET USER al permiso que falta. Si el volcado procede de MySQL, también pueden fallar las líneas SQL_LOG_BIN (permiso BINLOG ADMIN) y GTID_PURGED; para ellas está la opción «Eliminar líneas de replicación».
utf8mb4_0900_ai_ci es la intercalación predeterminada de MySQL 8. MariaDB no la reconoce, ni siquiera en la versión 11.6, y devuelve el error #1273 al ejecutar CREATE TABLE. La corrección «Sustituir intercalaciones de MySQL 8» la reemplaza, junto con las demás variantes 0900, por utf8mb4_unicode_ci; las variantes que distinguen mayúsculas de minúsculas se reemplazan por utf8mb4_bin. Las instrucciones INSERT y, por tanto, tus datos permanecen intactos.
No. Un volcado suele contener datos de clientes y credenciales, por eso la herramienta solo lee el archivo en tu navegador mediante un Web Worker. No hay subidas, almacenamiento ni necesitas una cuenta. En la pestaña Red de las herramientas de desarrollador puedes comprobar que, al comprimir o dividir el archivo, no se envía ninguna solicitud que lo contenga.
¿Tienes más preguntas?
Contactar con soporteTu base de datos sin límite de subida en tu propio VPS
Con un VPS de ZAP-Hosting tienes acceso root, puedes importar dumps grandes desde la consola y ejecutar MySQL, MariaDB o PostgreSQL como prefieras.
Sin configuración. Sin riesgos. En línea en segundos.
¿Buscas más herramientas? Ver todas las herramientas para desarrolladores
