好吧,我得承认,我搞错了。我从要重新安装的服务器导出了一个数据库,但没有检查该文件。
现在,当我尝试导入它时,我发现了一些非常奇怪的是,该文件应该是 GZIP 压缩的,但它无法压缩,所以我在 Notepad++ 中打开它,发现它没有被压缩。但是当我尝试将其作为纯 SQL 导入时,我发现了更奇怪的事情,在文件的中间某处开始了一个字节流。
看起来 phpmyadmin 以某种方式搞砸了导出。这里您可以看到该文件。
有人遇到过类似的事情吗? 有办法恢复这样的文件吗?
这不是一个很重要的数据库,它可以在几个小时内重新创建,而且我可以从异地备份中恢复它。但可能有人不定期备份数据(你真的应该这样做!),因为我在互联网上没有看到过类似的东西,所以我在这里分享它,也许有人知道是什么原因造成的,如何修复它以及如何恢复这些文件。
答案1
我昨晚遇到了同样的问题,并解决了它。您需要 gzrt 包来修复 gzip。修复方法如下:
- 将 database.sql.gz 文件的开头纯文本部分复制到名为 database.sql 的新文件中
- 跑步
gzrecover database.sql.gz
- 将 database.sql.recovered 的内容附加到 database.sql 中
您可能需要手动替换几个字符。
看这个问题了解发生此事件的原因的更多信息。