@jensen
Для проверки работы блокировок (lock tables) в MySQL можно выполнить следующие шаги:
- Откройте два соединения с базой данных (например, через консоль mysql и клиентское приложение, такое как phpMyAdmin).
- В первом соединении выполните команду LOCK TABLES для блокировки таблицы:
1
|
LOCK TABLES table_name WRITE;
|
- Попробуйте выполнить любой запрос на запись в эту таблицу во втором соединении (например, выполните команду INSERT INTO).
- Если блокировка работает правильно, то запрос на запись в таблицу должен зависнуть в ожидании освобождения блокировки. Вы можете убедиться в этом, выполнив SHOW PROCESSLIST во втором соединении и увидеть, что запрос стоит с состоянием "Waiting for table level lock".
- Чтобы освободить блокировку, выполните команду UNLOCK TABLES в первом соединении:
- После этого запрос на запись в таблицу во втором соединении должен быть успешно выполнен.
Замечание: не забывайте, что блокировка таблицы может повлиять на производительность и доступность вашей базы данных, поэтому используйте ее осторожно и только там, где это действительно необходимо.