php - 如何使用 PHP 获取 MySQL 数据库表的当前快照并将其通过 FTP 传输到远程服务器

标签 php mysql ftp

场景如下:

  1. 我得到一个 CSV 文件,其中包含数据 1、数据 2、数据 3、数据 4(添加、更新、删除)、数据 5,CSV 文件中有大约 90000 个条目,第一行给出列的描述,例如

    日期年龄名称状态(添加、更新、删除)时间

    1 01/02 23 菲尔 A 23:00:00
    2 02/03 32 埃里克 D 12:00:00 3 09/07 36 蒂米 U 11:00:00

  2. 我需要解析此 CSV 文件并将数据存储到数据库中,并且根据状态,我需要从数据库中添加、更新或删除信息。我这样做是使用 PDO 和准备好的语句和绑定(bind)参数。

Few Questions , Q2我已经问过哪个可以为这个摘要添加内容并且会有用。

  1. 根据 STATUS 表对数据库执行添加、删除和更新等所需操作后,我需要获取 MySQL 表(或数据库,但现在更关心表)的当前快照并将其发送到 FTP 服务器来自 PHP。

我的问题:

  1. 我正在尝试根据 STATUS 更新数据库的内容,但不知何故未更新,此问题已在上面列出的第 2 季度中讨论过。

  2. 我还想获取 MySQL 表 的当前快照或状态,我需要将其导出到 FTP 服务器,但我不确定需要采取什么方法来实现我的目标目标。

希望这里的问题很清楚,并且会得到一些有用的信息。

谢谢。

更新:我已经尝试寻找其他替代方法来获取数据库当前状态的快照,在我的例子中是 MySQL,但没有找到任何可以使用的替代方法。 Google 给了我奇怪的答案,让我误入歧途,获取当前数据库状态的快照并使用 PHP 将其发送到 FTP 服务器真的那么难吗?

最佳答案

您可以使用 mysqldump 创建 MySQL 数据库或表/表组的快照命令。

这将为您提供一个文本文件。如果您的数据库相当大,您将需要压缩该文件。在 Linux 上,我使用 gzip 命令。

然后您可以将该文件通过 FTP 传输到远程服务器。根据您的操作系统和 PHP 配置,您可能能够执行脚本化的操作系统命令来执行 FTP。这是在什么操作系统上运行?您的 PHP 配置是否允许您执行操作系统命令?

编辑:

由于您无法运行操作系统级别的命令,请考虑在 PHP 中从表中执行 SELECT *,将结果写入文件,然后使用内置的 PHP FTP commands将该文件传输到您的远程服务器。

关于php - 如何使用 PHP 获取 MySQL 数据库表的当前快照并将其通过 FTP 传输到远程服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2389174/

相关文章:

ftp - 在 FTP 客户端中使用 grep 和 ls?

php - 如果 user_id 和 post_id 相同,如何从我的数据库中删除一个赞?

php - 我如何以编程方式打开一个 docx 文件,对其进行编辑,然后在不破坏的情况下再次密封它?

php - 在 PHP 中编辑 Access 数据库

python - cursor.fetchone() 返回 None 但数据库中的行存在

php - PDO 插入后获取整行

php - 添加了 if else 参数和从数据库中丢失的变量

php - 是否可以在单个MySQL服务器上应用复制机制?

spring - FTP 出站网关委托(delegate) session 工厂性能

php - OpenSSL 启用但不工作