php - 导入 postgresql 数据库转储

标签 php postgresql dump

我有以下工作流程,我想使用简短的 PHP 脚本将其自动化。

  1. 从特定 URL(可能是 FTP)下载 gzfile(带数据库转储)。
  2. 将文件解码为 txt。
  3. 使用 psql(使用 cmd)将 txt 导入到本地 postgre。

现在我有两个问题:

  • 将压缩文件传递给 pg_query 的最佳方式是什么?
  • 当 PHP 到达这一行时我得到一个错误:
    COPY rf (datum, id_emailu_op, recency, frequency) FROM stdin; 2011-08-29 8484 3 1stdin 会是个问题吗?

谢谢大家!

最佳答案

pg_dump 文件是通过 psql 导入的。您可以加载文件内容,甚至用 php 解压缩它,然后打开一个管道到 psql 将数据写入该进程(假设您在 unix 机器上)。当 psql 以这种方式执行时,就其而言,您通过 php 脚本编写的数据将通过 stdin 传入。

关于php - 导入 postgresql 数据库转储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7244463/

相关文章:

php - 如何访问 Carbon 对象类型?

java - 我可以将 Realm 用作 postgres ORM 吗?

ruby-on-rails - Rails 中的 PostgreSQL : sorting object by two date attributes in descending order

c++ - 分析故障转储文件

ssh - proc_open 交互

PHP fputcsv 不从 SQL 查询输出第一行(输出第一行之后的所有其他行)

php - Joomla DB 查询未正确执行

postgresql - 如何计算postgresql中的空行?

mysql - 将转储文件(.dbo 文件)加载到 mariadb 数据库中

python - 如何使用 json.load 将信息从 txt 保存到字典