Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Laravel eloquent delete()创建的大量行锁定等待超时超出异常_Php_Mysql_Laravel_Eloquent_Delete Row - Fatal编程技术网

Php Laravel eloquent delete()创建的大量行锁定等待超时超出异常

Php Laravel eloquent delete()创建的大量行锁定等待超时超出异常,php,mysql,laravel,eloquent,delete-row,Php,Mysql,Laravel,Eloquent,Delete Row,在我的网站上使用laravel,我试图安排一个队列,定期删除1000万行 拥有 Data::where('fetch_stamp','Lock wait timeout extended通常意味着表被锁定,通常是一个长时间运行的进程。发生这种情况时,您需要登录数据库并执行show processlist;以查看是否有任何长时间运行的进程。您可能还需要在fetch_stamp列上添加索引,以便t它可以更快地找到记录。是的,添加了一个索引。长时间运行的过程实际上就是这个特定的删除过程,但失败了。只是

在我的网站上使用laravel,我试图安排一个队列,定期删除1000万行

拥有


Data::where('fetch_stamp','
Lock wait timeout extended
通常意味着表被锁定,通常是一个长时间运行的进程。发生这种情况时,您需要登录数据库并执行
show processlist;
以查看是否有任何长时间运行的进程。您可能还需要在
fetch_stamp
列上添加索引,以便t它可以更快地找到记录。是的,添加了一个索引。长时间运行的过程实际上就是这个特定的删除过程,但失败了。只是我在文档中找不到任何关于此删除()的线索方法是有效处理删除数据库中数百万行的好方法,因为它可能会抛出一系列模型删除/删除事件,因此使用Elount模型可能不是最好的方法。您最好使用QueryBuilder,
DB::table
。我还没有测试过它,所以我不能说是certain.谢谢你同样的失败照亮\Database\QueryException:SQLSTATE[HY000]:一般错误:超过1205锁等待超时;尝试重新启动事务(SQL:delete from
data\u sth
where
fetch\u stamp
<2018-09-08 20:55:34)我想我仍然需要深入研究文档…这个查询经常运行吗?
PDOException: SQLSTATE[HY000]: General error: 1205 Lock wait timeout exceeded; try restarting transaction in /home/forge/website.com/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php:142