我編寫了一個腳本,用於備份 MySQL 資料庫並使用資料庫的 mysql 轉儲產生一個 GZIP 檔案。我想知道是否可以透過一個命令解壓縮 GZIP 檔案並恢復資料庫?
像這樣的事情:
mysql -u user -h host -ppass database < gzip -c database.backup
但這似乎不起作用。有什麼建議麼?
我使用以下命令:
mysqldump -u user -h host -ppass database | gzip -9 > database.backup
我得到的錯誤是:-bash: gzip: No such file or directory;
在我看來,這表明它無法將 gzip 識別為命令或類似命令
答案1
您正在使用兩個命令,因此應該使用管道而不是重定向。我用這個:
gunzip < file.gz | mysql <parameters>
答案2
通常這應該有效。 gzip 是否已安裝並在 PATH-Variable 中可用? (您可以使用指令“which gzip”進行測試
mysqldump -u user -h host -ppass database | gzip -9 > database.backup
但我會使用後綴 .gz 作為備份文件
你也可以嘗試
mysqldump -u user -h host -ppass *--database* "db_name" | gzip -9 > "db_backup".backup.gz
我最近編寫了一個腳本來對資料庫進行壓縮備份。