gpt4 book ai didi

php - 当 mysql 服务器启动/重新启动时运行更新/删除查询?

转载 作者:行者123 更新时间:2023-11-30 21:48:20 25 4
gpt4 key购买 nike

我正在开发一个基于 PHP/Laravel 的应用程序。有一个场景,我必须在 MySQL 表中插入大量数据,一旦用户提交,大约需要 1-2 分钟才能完成插入查询。我想在上一个仍在进行时绕过另一个插入查询。

所以我创建了一个log 表,其中0 的值插入到is_completed 字段之前,批量插入在另一个表上开始,当批量插入循环完成后,我触发了另一个查询,它更新了 log 表的 is_completed 字段上的 1

这样我可以检查 is_complete 标志是否设置为 1 以允许用户的下一个请求,否则只是绕过查询。我已经使用事务进行批量插入并且我处理异常时清除日志。

现在,如果在批量插入正在进行时服务器重新启动,则会出现问题,在这种情况下,is_complete 标志在日志表上设置为 0。如果是这样,用户不会直到第二天才能请求插入数据。

MYSQL 是否提供任何类型的自动化,以便在数据库服务器刚启动时我们可以运行查询?如果是这样,我将触发查询以清除日志表。关于我的情况,有人可以告诉我该怎么做或建议我更好的解决方案吗?

最佳答案

您可以使用 init_file 服务器选项在服务器启动时运行 SQL 语句。

https://dev.mysql.com/doc/refman/5.6/en/server-options.html#option_mysqld_init-file

关于php - 当 mysql 服务器启动/重新启动时运行更新/删除查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48435832/

25 4 0
文章推荐: javascript - 遍历我的sql结果并循环显示
文章推荐: c - 传递一个包含 NULL 的结构指针突然包含一个结构而不是 NULL
文章推荐: c# - 使用 join 和 where 从 Linq SQL (Lambda) 返回 List