将postgres数据库转储导入空数据库时出错

时间:2014-11-20 10:18:52

标签: postgresql import psql postgresql-8.4

我需要将psql转储导入到新的psql数据库中。当我执行以下命令时,我收到错误。

psql -U user new_database< filename.sql

我得到的错误:

错误:内存不足 详细信息:无法放大包含0字节的字符串缓冲区1208975751个字节。

我该如何解决这个问题。 Aldo,有没有记录导入过程的方法?

感谢。

1 个答案:

答案 0 :(得分:0)

我认为最常见的原因是“损坏的”SQL文件。没有简单的解决方法。将文件拆分为一半(man split),将SQL语句修复到一个结果文件的尾端并在另一个文件的头端修复,然后再次运行。在过去,我似乎记得看到“UTF-8的无效字节序列”,或类似的东西。我确定还有其他原因。

PostgreSQL has a lot of logging options;在postgresql.conf中设置它们并重新启动PostgreSQL。看看

  • log_destination
  • logging_collector
  • client_min_messages
  • log_error_verbosity
  • log_statement