2010-03-09 43 views
7

我有大量的背景读取和写入,以及少量的用户读取高度竞争的MySQL数据库 - 是否有任何方式来标记某些查询(用户查询)为高优先级,以便他们采取优先于后台查询?我希望用户的响应能力很高,但并不关心后台查询。如何优先考虑MySQL中的某些查询?

由于

+0

您正在使用哪种存储引擎? InnoDB的? MyISAM数据? – 2010-03-09 10:33:15

+0

InnoDB,但我可以切换,如果有很好的理由.. – MalcomTucker 2010-03-09 11:08:26

回答

5

MySQL支持为update小号insert delayed用于延迟insert S和low_priority。并且为了您的用户阅读,select上有high_priority扩展名。如果您使用的是MyISAM存储引擎,则有相关(但不同)的concurrent inserts功能。

+0

另一方面,'SELECT'支持'HIGH_PRIORITY'关键字,它给出与更新相同的优先级。 – 2010-03-09 10:38:00

+0

@Romuald:显然,我正在编辑我的答案,因为你评论。 :-) – 2010-03-09 10:39:45

+0

我是否正确认为如果没有高优先级选择所有低优先级的插入和更新将只是在正常的优先级? – MalcomTucker 2010-03-09 10:46:19