Divisore Dump SQL
Dividi un grande dump .sql in file più piccoli ai confini delle istruzioni sicure, mantenendo schema, dati e vincoli in ordine caricabile.
🔒 Questo strumento funziona interamente nel tuo browser. I tuoi file non vengono mai caricati su un server.
Scegli un file .sql (funziona anche .sql.gz). Viene letto localmente e non viene mai caricato.
Un'unica istruzione di grandi dimensioni potrebbe superare questo limite per restare valida.
Come funziona SQL Dump Splitter
- Aggiungi il file di dump - un .sql normale o un .sql.gz compresso funzionano entrambi, e viene letto nella pagina, quindi non viene caricato nulla.
- Scegli una dimensione dei blocchi che il tuo strumento di importazione o il limite di hosting possa accettare.
- Carica i file in ordine numerico. Lo splitter mantiene l'ordine originale delle istruzioni del dump e conserva intatte le stored procedure, i trigger e le funzioni, quindi controlla le sezioni di schema, dati e vincoli prima di importare.
FAQ
Perché i vincoli devono essere caricati per ultimi?
Perché i file di dati si riferiscono l'uno all'altro. Caricare le chiavi esterne prima che esistano le righe a cui fanno riferimento fallisce, quindi l'ordine standard è schema, poi dati, poi vincoli e indici.
Posso dividere in qualsiasi punto del file?
No - dividere a metà di un'istruzione produce file singolarmente non validi come SQL. Le divisioni devono cadere sui confini delle istruzioni, motivo per cui una semplice divisione per numero di righe di solito non funziona.
Gestisce stored procedure, trigger e funzioni?
Sì. Un dump che cambia il delimitatore delle istruzioni con DELIMITER ;; per definire una routine viene mantenuto come un unico blocco indivisibile dalla riga DELIMITER di apertura a quella di chiusura, quindi un confine di blocco non cade mai all'interno del corpo di una procedura o tra DELIMITER ;; e il corpo che ne dipende.
Posso usare un dump .sql.gz compresso?
Sì - trascina direttamente il file .gz e verrà decompresso nel tuo browser prima della divisione, usando lo stesso formato gzip standard prodotto dal comando gzip e da mysqldump | gzip. Nulla viene caricato o convertito lato server.
Perché la mia importazione è ancora lenta dopo la divisione?
La divisione risolve i limiti di dimensione, non la velocità. Per la velocità, carica i dati prima di creare gli indici e racchiudi i batch in transazioni.
Funziona solo con dump MySQL?
No. La divisione avviene in modo generico ai punti e virgola di fine istruzione, quindi anche un dump PostgreSQL o di altro tipo SQL si divide in sicurezza. La gestione specifica di MySQL per DELIMITER si attiva solo quando un dump usa effettivamente quella sintassi per stored procedure o trigger - altrimenti non ha alcun effetto.
Come scelgo la dimensione dei blocchi?
Adattala a ciò che sta rifiutando il file intero - phpMyAdmin e molti host limitano i caricamenti da pochi MB a poche centinaia di MB, quindi verifica quel limite e scegli una dimensione dei blocchi ben al di sotto. Blocchi più piccoli significano solo più file da importare in ordine, senza altri svantaggi.
Come ci confrontiamo
| Funzionalità | Online Tool Store | Uno script da riga di comando | Un plugin IDE |
|---|---|---|---|
| Confini sicuri sulle istruzioni | ✓ | ✗ | ✓ |
| Mantiene l'ordine originale delle istruzioni | ✓ | ✗ | A volte |
| Nessun caricamento del dump | ✓ | ✓ | ✗ |
| Funziona oltre i limiti di caricamento dell'hosting | ✓ | Dipende | ✗ |
| Mantiene intatte le stored procedure/trigger durante un cambio di DELIMITER | ✓ | Solo se lo script gestisce DELIMITER | ✓ |
| Accetta direttamente un dump .sql.gz compresso | ✓ | Confermato su sqlsplit.com; uno script semplice di solito richiede prima la decompressione | ✓ |
SQL Dump Splitter aiuta quando un'importazione fallisce per la dimensione del file - divide dove SQL lo consente, decomprime un dump compresso con gzip per te e mantiene ogni blocco sicuro a livello di istruzione, comprese le stored procedure.