2010-03-03 4 views
0

У меня есть база данных MySQL, которая управляет данными учетных записей пользователей. Каждый пользователь может запросить только собственные данные. У меня есть сценарий, который при первоначальном входе получает пользовательские данные и вставляет его в БД. Я запланировал процесс cron, который обновляет данные всех пользователей каждые 4 часа.Вопросы синхронизации MySQL

Вот мои вопросы по нему:

(1) - Мне нужно реализовать какой-то механизм блокировки на начальном сценарии входа делать? Этот скрипт может выполняться большим количеством пользователей одновременно - но каждый пользователь имеет выделенное место в БД, поэтому он не влияет на другие строки БД.

(2) - Тот же вопрос по процессу cron, должен ли я обрабатывать этот сценарий: Пока процесс cron обновляет данные пользователя i, пользователь i пытается извлечь его данные из базы данных. Я имею в виду, что MySQL уже поддерживает и обрабатывает этот сценарий?

Любая помощь будет оценена по достоинству.

Спасибо.

ответ

0

Нет, вам не нужно блокировать базу данных, двигатель MySQL обрабатывает эту задачу для вас. Если вы сами сделаете свой движок базы данных, вы должны быть уверены, что ничто не будет мешать или не противоречит обновлению данных, но поскольку вы используете такую ​​умную вещь, как MySQL, вам не нужно беспокоиться о Это.

Пока данные обновляются, все запросы будут стоять в очереди, пока обновление не завершится.

Смежные вопросы