Other update commands will have to wait until the INSERT DELAYED queue is empty, someone kills the handler thread (with KILL thread_id ), or someone executes FLUSH TABLES . For storage engine that supports table locking (for example, MyISAM), you can specify the priority of your insert. See HIGH_PRIORITY and LOW_PRIORITY clauses for details. I have a large MyISAM table on MySQL 5.5(Windows XP x64) on which I will have to run DELETE LOW_PRIORITY queries. MySQL sorts ENUM values based on their index numbers. If you use the HIGH_PRIORITY keyword, the statement has the same priority as SELECTs. It is possible, therefore, for a client that issues an INSERT LOW_PRIORITY statement to wait for a very long time (or even forever) in a read-heavy environment. This includes other clients that began reading while existing clients are reading, and while the INSERT LOW_PRIORITY statement is waiting. Make Insert a Low Priority (or High Priority) Activity. Description: We have a MyISAM table that gets three types of queries: - SELECT count(*) to find the number of rows for a user - SELECT deviationid, ts to get rows when a certain page is viewed - A long, slow DELETE when a lot of rows need to be deleted The count(*) is simple and fast and gets run often, and the DELETE is slow but is run in the background. LOW_PRIORITY: This modifier informs the MySQL Engine to delay the execution of the INSERT statement until such a time that there are no connections with reading from the table that we are attempting to INSERT. This helps in achieving consistency across all other operations that will be performed on that table. Note that this means that INSERT DELAYED commands have higher priority than normal INSERT commands if an INSERT DELAYED handler is already running! INSERT DELAYED This affects only storage engines that use only table-level locking (MyISAM, MEMORY, MERGE). If write statements have a higher priority (default), the priority of individual write statements (INSERT, REPLACE, UPDATE, DELETE) can be changed via the LOW_PRIORITY attribute, and the priority of a SELECT statement can be raised via the HIGH_PRIORITY attribute. Therefore, the order of member depends on how they were defined in the enumeration list. slow query log file /var/log/mysql-slow-queries.log socket /tmp/mysql.sock sort buffer size 33,554,432 sql auto is null ON sql big selects ON sql big tables OFF sql buffer result OFF sql log bin ON sql log off OFF sql log update ON sql low priority updates ON sql max join size 18446744073709551615 sql mode sql notes ON sql quote show create ON Does DELETE LOW_PRIORITY make the rows invisible to SELECT statements immediately and actually delete the rows from disk when no clients are accessing the table, or is the point delaying removal of visibility?