как заблокировать базу данных mysql и вывести из очереди ожидающие задания - PullRequest
0 голосов
/ 17 мая 2011

Мне было интересно, если кто-нибудь знает, как заблокировать базу данных, а затем удалить из очереди ожидающие задания.поэтому у меня есть хеш-таблица в базе данных, и я сохраняю данные в базе данных, где несколько пользователей отправляют запросы на редактирование этих данных одновременно, но данные должны быть постоянными для всех пользователей, и что только один пользователь может обрабатывать / редактироватьэто за один раз.

спасибо большое =)

Ответы [ 2 ]

0 голосов
/ 17 мая 2011

Вы можете найти что-то интересное в http://dev.mysql.com/doc/refman/5.0/en/innodb-deadlocks.html. Один из способов сериализации транзакций состоит в том, чтобы создать таблицу, содержащую только одну строку, и заставить каждую транзакцию обновлять эту строку до начала своей реальной работы.

0 голосов
/ 17 мая 2011

Можете ли вы уточнить "но данные должны быть постоянными для всех пользователей"?

Я думаю, что InnoDb, который является транзакционным, будет держать вещи так, чтобы это было совместимо для всех ваших пользователей. Это ACID соответствует.

...