Uno dei problemi più grandi per un programmatore che deve lavorare con database è come importare un file .sql (tecnicamente dump) di grandi dimensioni.
Se adoperate phpmyadmin come interfaccia grafica o altri gestori di caricamento, a meno che non abbiate impostazioni particolari, sarete limitati a importare file da 24 mega. Non si tatta di una limitazione fatta per “infastidire” il programmatore: dump troppo estesi potrebbero mandare in timeout il server che ospita il database ed è quindi una misura di sicurezza.
Come fare, quindi, se abbiamo a che fare con dump di enormi dimensioni? Soprattutto se lavorate su e-commerce con pagine da migliaia di prodotti, è facile esportare un file di 40-50 mega. Se poi avete la necessità di importarlo su un’altra database, magari per una demo, oppure nello stesso database che si è corrotto, arrivano i guai.
Fortunatamente esistono software, anche gratuiti, che ci vengono in soccorso.
Uno di questi è SQL Dump Splitter (trovate il link al sito ufficiale in fondo all’articolo), un software creato da Philip Lehmann Bohm che si occupa di prendere un file .sql e di dividerlo in più file di minori dimensioni e con le dimensioni da noi impostate.
Funzionamento di SQL Dump Splitter
Scaricatevi l’exe del programma dal link del sito oppure direttamente da Sir Bit e lanciatelo: il file exe è di piccole dimensioni ed è stand-alone, quindi non richiede installazione.
Una volta aperto vi apparirà una schermata come la seguente:
Step1
Selezionate il file sql cliccando su “browse”.
Step2
Settate la dimensione massima che deve avere ogni pezzo che sarà creato.
Step3
Selezionate un’eventuale cartella di destinazione.
Step4
Spuntate la casella “skip comment-lines” per ignorare i commenti nel file. Poi premete su “Execute”: sarà creata una cartella contenente tutti i frammenti.
Ecco fatto: il vostro dump è stato suddiviso correttamente. Cercate la cartella di destinazione contenente i vari file.
Il primo frammento da importare nel vostro database è quello contenente la parola “structure” nel nome: carica la struttura di tutte le tabelle nel database.
Poi a turno si importano i frammenti in ordine numerico: ogni file, infatti, avrà lo stesso nome con un suffisso numerico crescente.
Il sito ufficiale di SQL Dump Splitter
(1) http://venditatech.com/products-services/technology-solutions/oracle-2/
(2) http://www.sqldumpsplitter.com