Yanıtlar:
zcat /path/to/file.sql.gz | mysql -u 'root' -p your_database
>
mysql
Komutun çıktısını büyük olasılıkla istediğinizi olmayan bir stdout
dosyaya yazacaktır myfile.sql.gz
. Ek olarak, bu komut MySQL kullanıcısının "root" şifresini soracaktır.
~/.my.cnf
kimlik bilgileri ile oluşturun . ;)
zcat /path/to/file.sql.gz | mysql -u 'root' -p your_database
. Son parametrenin, şifreniz değil kullanmak istediğiniz veritabanı olduğunu bilecektir.
Bir sql.gz dosyasını içe aktarırken bir ilerleme çubuğu görüntülemek pv
için aşağıdakileri indirip kullanın:
pv mydump.sql.gz | gunzip | mysql -u root -p
CentOS / RHEL’de pv ile kurabilirsiniz yum install pv
.
Debian / Ubuntu’da apt-get install pv
.
MAC’te brew install pv
pv
Ubuntu depolarında da gözüküyor (en azından 12.04 LTS'de), ancak tekrar sudo apt-get install pv
almak için yapmanız gerekiyor. Teşekkürler Banjer, bu büyük veritabanı ithalatı için mükemmel!
brew install pv
En basit yol, içe aktarmadan önce veritabanı dosyasını açmak. Ayrıca @Prof. Moriarty komutta şifreyi belirtmemelisiniz (şifre istenir). Web sayfasından alınan bu komut bir kerede veritabanını açacak ve içe aktaracaktır :
gunzip < myfile.sql.gz | mysql -u root -p mydb
gunzip
bir 10GB sıkıştırılmış dosya üzerinde benim ithalat donmasına neden oldu. Bunun hafıza kısıtlamaları veya bir şey yüzünden olup olmadığından emin değilim ama gelecekte bir adım atmanın yanında olacağım.
zcat
Hata mesajında fazladan bir sonek bulunan dosya adını içeren bir hata alırsanız , https://stackoverflow.com/questions/296717/zcat-wont-unzip-files-properly adresinde anlatıldığı gibi yerine .Z
kullanmayı deneyin.gzcat
Ayrıca, SQL dosyasında herhangi bir USE ifadesi olup olmadığını kontrol edin. Veritabanını komut satırında belirlemek, SQL dosyası içinde farklı bir hedef belirtilmişse, verilerin orada biteceğini garanti etmez.
pv mydump.sql.gz | gunzip | mysql -u root -p
your_database
. Kabul edilen cevap bu yaklaşımı kullanır.
İçin bzip2 sıkıştırılmış dosyaları (.sql.bz2) kullanın:
bzcat <file> | mysql -u <user> -p <database>
VEYA
pv <file> | bunzip2 | mysql -u <user> -p <database>
ilerleme çubuğunu görmek için
Komut -c, --stdout, --to-stdout
seçeneğini kullanabilirsinizgunzip
Örneğin:
gunzip -c file.sql.gz | mysql -u root -p database