【发布时间】:2026-02-14 04:10:01
【问题描述】:
我有一个带有完整 mysql 数据库更新的 tar.gz,我可以通过 ftp 访问它。
这个 tar.gz 每天更新,我想创建一个到该 ftp 帐户的 php 和/或 mysql 连接,这样我就可以在我的本地 mysql 服务器上运行那个大型 sql 查询。
有什么想法吗?
【问题讨论】:
我有一个带有完整 mysql 数据库更新的 tar.gz,我可以通过 ftp 访问它。
这个 tar.gz 每天更新,我想创建一个到该 ftp 帐户的 php 和/或 mysql 连接,这样我就可以在我的本地 mysql 服务器上运行那个大型 sql 查询。
有什么想法吗?
【问题讨论】:
(我要冒个险,假设您想从某种 unix 盒子中执行此操作...)
抛出这个:
#!/bin/bash
wget \
-O - \
--ftp-user=username \
--ftp-password=password \
"ftp://wherever/whatever.tar.gz" | tar xzOf - | mysql --user=whoever --password=secret dbname
在一个文件中(例如update-db.sh)然后chmod它:
chmod 755 update-db.sh
那么你可以:
./update-db.sh
只要您想下载更新。或者,您可以将其放入 cron 作业 (man crontab)。
编辑:将O 标志添加到tar,以便提取到标准输出。
【讨论】:
首先 PHP 支持从 FTP 读取,只需使用 fopen 和指定的 ftp 协议,像这样
<?php
$handle = fopen("ftp://user:password@example.com/somefile.txt", "w");
?>
然后您需要解压缩存档。这里来自 Pear 存储库的 File_Archive 将非常方便
【讨论】: