php - 如何安排 cron 作业每天提取数据库并通过邮件发送报告

标签 php mysql

我正在使用共享服务器托管,请帮助我了解如何安排/自动每天进行数据库备份,并以 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/

相关文章:

php - 显示带前导零的值

php - 将大量地点转换为经纬度并使用 PHP 更新 MySQL 数据库

MySql 多表约束

c# - 从表中选择较大的 ID

mysql - 获取查询的列顺序

c++ - Mysql C++ 驱动程序-创建后获取准备好的语句查询

php - 找不到动态类引用 PHP

php - Laravel:找出变量是否是集合

php - 堆叠多个粘性元素

mysql - 关于计算平均分的数据库设计