phpPgAdmin 导出空的 SQL 转储?

phpPgAdmin 导出空的 SQL 转储?

我正在尝试从 phpPgAdmin 导出 PostgreSQL 数据库,但由于某种原因,它会转储出一个空的 SQL 文件。

数据库肯定不是空的。

要导出它,我单击数据库,然后导出,然后选择结构和数据。

知道为什么会这样吗?谢谢

答案1

您需要修改 /usr/share/phppgadmin 中的 dbexport.php(在 Ubuntu 上)

修改行从passthru($cmd);修改echo passthru($cmd);$cmd = $exe . " -i";$cmd = $exe;

这就足够了。因为该参数-i在 postgres 9.5 中似乎已被弃用,所以他给了我错误。

答案2

我设法使用以下命令从命令行导出它:

./pg_dump -U postgres -c -f /htdocs/databasename.sql databasename

答案3

我遇到了同样的问题并检查了我的日志:

/usr/lib/postgresql/8.4/bin/pg_dump: invalid option -- 'd'
Try "pg_dump --help" for more information.

phpPgAdmin 使用选项 -d,该选项在 2009 年已弃用,因此我编辑了 dbexport.php 并将“-d”替换为“--inserts”,现在它可以正常工作了 :D!

http://archives.postgresql.org/message-id/[电子邮件保护]

答案4

在导出界面,选择导出类型“SQL”将返回一个空文件。在这里选择“导出类型”为“COPY”是正确的选择 - 它返回转储 sql 文件。

但我也认为 phppgadmin 太烂了,我们不如使用命令行。例如,如果你上传的 SQL 文件超过了允许的上传文件大小(通常约为 2MB),它会失败但不报告任何错误。

相关内容