я тогда не понимаю одного
зачем делать лок на таблицы, ради того чтоб взять позицию мастер лога?
если я например могу просто указать, чтоб оно начало синк с начала
STOP SLAVE; RESET SLAVE ALL; CHANGE MASTER TO MASTER_HOST="hostName", MASTER_USER="repl_user", MASTER_PASSWORD="repl_password", MASTER_LOG_FILE="blabla-bin", MASTER_LOG_POS=154; START SLAVE;
Чтобы взять консистентный бэкап для заливки на слейв.
Идея (выше уже изложенная) проста:
0) Замораживаем изменения в исходной БД.
1) делаем бэкап.
2) размораживаем изменения, Начинаем записывать лог транзакций.
3) поднимаем бэкап на слейв. Там состояние БД на момент до п(2)
4) Запускаем репликацию, и БД слейва постепенно получает все изменения с момента (2) с мастера.