|
|
|
| Добрый день, мне нужна помощь. У меня произошел казус, связанный с ответом базы.
Заказчик после написания скрипта, стал жаловаться что не может обратится к таблице, когда туда идет запись.
Я попросил админа выяснить почему это происходит.
Он отписал что у меня есть записи со статусом waiting for table level lock как убрать этот недуг?
Вот что пишет админ:
==================================
видишь. один апдейт есть. а вторые сидят в очереди. ждут Waiting for table level lock
Из за слишком много апдейтов в таблицу база не успевает по какой-то причине их всех обработать.
==================================
По какой причине база не успевает? | |
|
|
|
|
|
|
|
для: AlexDIXI
(12.04.2013 в 01:33)
| | Каков тип таблицы и её размер? Сколько индексов. Если не сложно приведите CREATE TABLE таблицы.
PS В качестве предположения, у вас MyISAM, которая блокируется полностью на момент записи. Или пишется очень часто, или таблица очень большая и запись занимает много времени. Используйте либо InnoDB, либо пишите в несколько маленьких приемных таблиц, агрегируя новые записи в целевую оптом. | |
|
|
|
|
|
|
|
для: AlexDIXI
(12.04.2013 в 01:33)
| | Попробуй repair table выполнить для той таблички.
Возможно, вторые в очереди и стоят, потому что MyISAM таблица и побита она. Первый не может записать в неё, потому что она побита, а вторые ждут первого. | |
|
|
|