gpt4 book ai didi

MySQL-大量删除后如何刷新表

转载 作者:行者123 更新时间:2023-11-29 13:19:38 26 4
gpt4 key购买 nike

我刚刚以以下形式运行了一个简单的删除查询:

DELETE*FROM [db.table] WHERE id < [value];

这从数据库中删除了大约 8000 万行(我已经归档了数据,不再需要它)。该系统不断地以每秒约 20 次插入的速度传入数据,现在数据库中又出现了几千个条目。

如果我运行一个按降序排序的查询(限制为 1000 行),如下所示:

SELECT*FROM [db.table] ORDER BY id DESC;

我立即得到结果,但是如果我按升序排序,如下所示:

SELECT*FROM [db.table] ORDER BY id ASC;

查询将在 10 分钟后超时。在我看来(这只是一个猜测),查询正在遍历我最近删除的行的所有 id,并且永远不会获取最新数据。这可能吗?

如何让“ASC 排序”查询发挥作用?我需要进行某种刷新吗?谢谢

最佳答案

考虑在进行大删除后运行 MYSQL 的优化表

Reorganizes the physical storage of table data and associated index data, to reduce storage space and improve I/O efficiency when accessing the table. The exact changes made to each table depend on the storage engine used by that table.

此处的文档:http://dev.mysql.com/doc/refman/5.1/en/optimize-table.html

关于MySQL-大量删除后如何刷新表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21032448/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com