2011-01-11 4 views
1

Есть ли способ заставить задержку репликации использовать MySQL? Например. Я хочу, чтобы раб находился на 12 часов позади мастера. В любом случае, чтобы это произошло?Создать задержка репликации MySQL

+0

Возможно, вы можете выполнить задание cron вручную включить/отключить репликацию каждые двенадцать часов, но я не знаю ничего, что обеспечит 12-часовой задержка. Этот тип нарушает всю настройку ACID, так как предполагается, что ведомые устройства должны быть синхронизированы как можно скорее. –

ответ

1

Update: MySQL 5.6 смотрит на добавление задержки репликации:

http://forge.mysql.com/worklog/task.php?id=344

EDIT:

Ссылка на информацию о наличии в 5.6.2:

http://planet.mysql.com/entry/?id=27133

+0

Это обсуждалось с конца 2005 года. Почти 6 лет спустя все еще на полке! – ricbax

+0

Да, но теперь он доступен в 5.6.2: http://planet.mysql.com/entry/?id=27133 – kvista

1

с MySQL-5.6 можно задержать раба MySQL намеренно. В подчиненном устройстве вам нужно настроить: CHANGE MASTER TO MASTER_DELAY = X, где X = нет секунд, в течение которого ведомое устройство должно отставать от ведущего мастера (сервера, на котором генерируются события). Задержка вычисляется относительно времени, когда исходный мастер взял событие для выполнения (не зафиксировано). Вот ссылка на документацию http://dev.mysql.com/doc/refman/5.6/en/replication-delayed.html. Вы можете найти полные примечания к этой функции по адресу http://dev.mysql.com/worklog/task/?id=344

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