2013-03-26 12 views
6

mi hanno stanziato quasi tutto il mio spazio sul server di produzione per il mio spazio tavolocome discarica di file sql.gz per mysql

Ora ho una discarica compresso di circa 20GB, che è necessario per essere scaricati in mysql

il problema è che il server non sta avendo molto spazio per decomprimere il file (che richiede circa 120 gb)

ho usato il comando beolw ma io sono un fallimento, perché viene prima decomprimere il file e quindi reindirizzare l'output di mysql

gunzip dbdump.sql.gz | mysql -u root -proot123 -S /home/mysql55/tmp/mysql.sock 

C'è un modo in modo che io possa scaricare il file compresso, senza decompressione è

eventuali suggerimenti sono davvero grato

risposta

11

Dovreste dire gunzip di scrivere sullo standard output. Quello che stai facendo in questo momento non sta andando a convogliare alcun output.

gunzip -c dbdump.sql.gz | mysql (args...) 
+0

grazie si sta lavorando bene e c'è un modo simile per il file sql.tar.gz – vidyadhar

+0

Non ho mai incontrato un tale 'sql.tar.gz', ma se intendi un file' tar.gz' che contiene un file 'sql', allora sarebbe' tar -zvxOf somefile.tar.gz percorso/a/sql/file | mysql ... '. –

+0

Perché il 'percorso/su/sql/file'? Ho importato il mio file con solo 'tar -zvxOf dump.tgz | database mysql -u ...' ' – rubo77

0

Possiamo ottenere lo stesso anche con il comando di seguito. Qui sto usando gzip

gzip -d < dbdump.sql.gz | mysql (args..) 

Un altro modo è come indicato di seguito

gzip -c dbdump.sql.gz | mysql (args..) 
0

Puoi provare a decomprimere il file al volo, nell'esempio:

$ cat dbdump.sql.gz | gzip -cd | mysql 
1

So che questo è ridicolo, ma è stato gzipato due volte, quindi

  1. Estratto filename.sql.gz
  2. Rinomina file estratto filename.sql-filename.gz
  3. estratto di nuovo

Spero che funzionerà

Problemi correlati