Gzip
phpMyAdmin 導出,半個文件壓縮?
好吧,我不得不承認,我被嚇壞了。我從要重新安裝的伺服器中導出了一個數據庫,但沒有檢查該文件。
現在,當我嘗試導入它時,我發現了一些非常奇怪的東西,該文件應該是 GZIP 壓縮的,但它不能被壓縮,所以我在 Notepad++ 中打開它,我發現它沒有被壓縮。但是當我嘗試將它作為普通 SQL 導入時,我發現了一些更奇怪的東西,文件中間的某個地方開始了一個字節流。
看起來 phpmyadmin 以某種方式破壞了導出。在這裡你可以看到那個文件。
有沒有人經歷過這樣的事情?有沒有辦法恢復這樣的文件?
它不是一個非常重要的數據庫,它可以在幾個小時內重新創建,而且我可以從異地備份中恢復它。但是可能會有人不定期進行數據備份(你真的應該!),因為我在網際網路上沒有看到這樣的東西,我在這里分享它,也許有人知道可能是什麼原因造成的,如何修復它以及如何恢復此類文件。
我昨晚遇到了同樣的問題,並且能夠解決它。您需要 gzrt 包來修復 gzip。以下是解決方法:
- 將 database.sql.gz 文件的開頭純文字部分複製到名為 database.sql 的新文件中
- 跑
gzrecover database.sql.gz
- 將 database.sql.recovered 的內容追加到 database.sql
您可能必須手動替換幾個字元。
有關它發生原因的更多資訊,請參閱此問題。