differenza database.sql
-
Buona sera
una curiosità che vorrei chiarire:Posto che database.sql è il file in cui ridireziono il dump del database che devo esportare
con questo comandomysqldump -u root -p nome-database > ~/backup/database.sql
ottengo un file che listato in modalità "human readable" il terminale mi da che la sua dimensione è di 25 M
cioè 25 MB ovviamente è un valore approssimato ma cmq al MB intero per cui in realtà, infatti il file pesa in effetti 25.5 MB secondo il file manager grafico di gnome.Calcolando la dimensione dello stesso database dalla console mysql ottengo 52 MB .... perchè?
forse il comando mysqldump fa una compressione di default nell'esportare il database?Facendo però anche l'esportazione dello stesso database dall'interfaccia phpmyadmin ottengo un file di 27 MB ....
e a sto punto sono davvero perplesso....
posso vedere che comando viene eseguito da phpmyadmin quando provo a fare l'esportazione ... forse usa delle opzioni che nn conosco... insomma, posso ritenere integro il database che ho esportato nel mio backup?
Grazie per eventuali risposte.
Filippo. -
Ciao, non sono un sistemista quindi vado "a intuito". I 25M che ottieni in realtà sono il peso del tuo database in formato testo, cioè una mega query che riempe una tabella.
La dimensione del db calcolata con mysql però comprende non solo il contenuto (i dati grezzi), ma anche tutti i dati effettivi che creano e costruiscono un database, tipo gli indici, gli overhead oppure gli spazi vuoti ma già allocati per velocizzare future inserzioni ecc..
Nel senso, quando esporti un database in reltà esporti solo i dati, che sono solo una parte (consistente ovviamente) di quello che è in effetti tutto l'ecosistema database -
Ok.
Quindi in sostanza mi stai dicendo che è tutto a posto, cioè che nel momento in cui dovessi ripristinare il sito che si appoggia al database, cioè nella importazione, i dati utilizzati saranno usati per ricostruire il database completo e insomma io gli passo il file coi dati ma poi il database viene ricostruito dal SW Mariadb.
Resta solo la piccola differenza (25.5 MB contro 27 MB) che trovo nell'esportare il database in questione rispettivamente col comando mysqldump oppure usando l'interfaccia phpmyadmin.
In ogni caso grazie ugualmente... la cosa mi tranquillizza, ora posso mettere un po' di ordine tra vari progetti locali che ho, usando i virtual host cosi poi avendo root directory separate per ogni progetto o test insomma, posso anche impostare diverse aree di lavoro in vs codium.
buona serata e grazie ancora
Filippo .