Блокирует строку в user
. Вы можете проверить это, используя отличный инструмент innotop .
- Запустите innotop и нажмите клавишу «L», чтобы отобразить экран блокировки InnoDB.
- Откройте другой сеанс, войдите в MySQL и НАЧАТЬ СДЕЛКУ.
- Выполните ОБНОВЛЕНИЕ, которое вы показали, но пока не выполняйте COMMIT.
- Просмотр блокировок на экране innotop.
Например, я создал таблицы user и user_profile на моей тестовой виртуальной машине под управлением MySQL 5.5 и выполнил шаги, перечисленные выше. Вот вывод:
[RO] Locks (? for help) localhost, 08:34.568, InnoDB 10s :-), 0.10 QPS, 2/0/0 con/run/cac thds, 5.5.
__________________________________________ InnoDB Locks __________________________________________
ID Type Waiting Wait Active Mode DB Table Index Ins Intent Special
2 TABLE 0 00:00 02:35 IX test user 0
2 RECORD 0 00:00 02:35 X test user PRIMARY 0 rec but not gap
2 TABLE 0 00:00 02:35 IX test user_profile 0
2 RECORD 0 00:00 02:35 X test user_profile PRIMARY 0 rec but not gap