Получить последнюю запись в двоичном журнале MySQL - PullRequest
2 голосов
/ 12 декабря 2008

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

Я могу использовать «SHOW SLAVE STATUS», чтобы получить текущие позиции чтения и выполнения. Но как я могу использовать эту информацию с mysqlbinlog для чтения последней записи? Предполагая, что ведомое устройство поймано ведущим, следующее утверждение не возвращает ничего полезного:

mysqlbinlog.exe -R --start-position=<READ_MASTER_LOG_POS> <MASTER_LOG_FILE> -h <MASTER_HOST>

Кажется, я не могу вывести минус единицу из позиции журнала, чтобы получить предыдущее утверждение, и я не вижу способа дать отрицательное смещение, означающее чтение с конца в обратном порядке. Есть ли способ сделать это?

Спасибо!

1 Ответ

1 голос
/ 28 декабря 2008

Вы после последнего оператора, который был отправлен подчиненному, или последнего оператора, который был выполнен на ведомом устройстве? Вы упоминаете, что вы предполагаете, что ведомое устройство захвачено ведущим устройством, и в этом случае вам просто нужно вместо этого прочитать последний оператор в журнале ретрансляции с информацией, доступной в SHOW SLAVE STATUS:

mysqlbinlog.exe --start-position=<RELAY_LOG_POS> <RELAY_LOG_FILE>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...