我正在寻找可以在我的电脑上本地运行的程序,它可以登录到服务器,执行 mysql 转储,并将其下载到我的电脑。我可以安排每天运行它。
如果它也可以同步网站的文件,那就更好了。
我在服务器端运行 Windows 7、Linux。服务器在另一个国家。
答案1
这是我的操作方式,MySQL 在托管的 Linux 服务器上运行,目标(目前)是 Mac。此方法同样适用于 Windows 目标。
- 服务器上的 cron 作业每晚都会使用 mysqldump 运行脚本来生成 sql 文件。该文件放置在可以远程获取的位置。我使用 wget,但如果主机允许,也可以使用 SSH 来完成。
- 过了一会儿,足以确保 mysqldump 已完成,目标机器下载 sql 文件并将其导入本地 MySQL 服务器。
- 作为一项单独的操作,目标计算机还使用 wget 同步网站的本地副本。执行此操作的脚本随后解析 wget 生成的 .listing 文件以确定实际下载的内容。在过滤掉我不感兴趣的内容(例如缓存文件)后,结果将通过电子邮件发送给我。这样我就知道是否有任何文件被更改或添加。该脚本还执行一些其他操作,但这些操作特定于我们的需求。
所有这些的结果是,我拥有远程服务器上内容的本地副本。特别是,我可以从数据库本地创建报告,而我无法在主机上轻松完成此操作,因为我没有所需的 Perl 模块,而 Perl 是我首选的报告工具。
答案2
您可以从 PC 运行 mysqldump。只需使用 -h 参数并指定远程 MySQL 服务器。确保您至少授予备份用户对要从 IP 地址或子网备份的数据库的 SELECT 权限。
干杯
答案3
你可以看看SQLyog(非免费)。
答案4
PC 版 Cygwin 也具有您可能习惯使用的各类 gnu 实用程序。Windows 现在也有 cron 了 :)