我使用以下命令创建了位于docker容器内的数据库转储:
docker exec -it container_id pg_dump -U postgres -Fc -d database_name > local_file.dump
-t flag enable伪终端模式。因此,local_file。转储文件已损坏。
我可以修复这个二进制文件吗?
在不打开-t
开关的情况下重新传输文件。还有更多的事情可能会出错,你无法知道这些字符是由TTY
插入的,还是它们属于那里。
你可能会幸运地找到制表符、空格和终端控制字符。您也可以尝试手动理解二进制postgres格式并尝试修复问题,但没有一般的建议。
再来一次