我正在使用共享服务器托管,请帮助我了解如何安排/自动每天进行数据库备份,并以 Excel 格式通过邮件发送备份。
我尝试了 cron 作业,但没有成功。由于我使用共享服务器,事件无法正常工作,因为调度程序已关闭,需要 super 权限,这在共享服务器托管中是不可能的。
最佳答案
在共享服务器上,这可能很棘手,但并非不可能。
一种方法:
- 创建一个 PHP 脚本来执行数据库导出:
- 从
information_schema
中选择数据库信息 - 使用
SHOW CREATE TABLE
导出表结构 - 选择每个表中的行,并从中创建 INSERT 查询
- 从
- 为此脚本添加安全性(例如特殊的 GET 参数,因此您是唯一能够运行它的人)
- 在您自己的计算机上创建 CRON/任务计划,以便每天查询此脚本。
如果这有效,您可以避免创建自己的脚本: https://gist.github.com/micc83/fe6b5609b3a280e5516e2a3e9f633675
这也可能很有趣: Using a .php file to generate a MySQL dump
另外,关于将计划任务放在您的计算机上,您可以将其放在多台计算机上,然后只需检查导出脚本是否已在今天运行(将此信息放入表中,或放在文件中)磁盘)。
关于php - 如何安排 cron 作业每天提取数据库并通过邮件发送报告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58678547/