Несколько вопросов
Останется ли запись «Ведомый» до тех пор, пока в таблицу на ведущем устройстве не будет добавлена / обновлена / удалена запись, которая может повлиять на Ведомого устройства?
Если нет, как я могу убедиться, что подчиненное устройство синхронизировано с ведущим в будущем (путем удаления записи подчиненного устройства или копирования этой записи вручную в ведущее устройство)?
Самое главное, как я могу определить, что таблицы не синхронизированы?
mysql
replication
kfmfe04
источник
источник
Ответы:
Пока вы не выполняете никаких инструкций INSERT / UPDATE / DELETE непосредственно на подчиненном устройстве, ваше подчиненное устройство должно быть в порядке. В противном случае MySQL Replication может прерваться, если вы ВСТАВИТЕ новую строку в mydb.mytable на подчиненном устройстве, и через репликацию Slave позже обнаружит INSERT строки в mydb.mytable с тем же PRIMARY KEY. Это приводит к ошибке 1062 (Duplicate Key).
Единственный способ написать в Slave без прерывания MySQL Replication - это:
CREATE DATABASE db4;
на РабаЧтобы обнаружить несинхронизацию главного и подчиненного без загрузки каких-либо инструментов, выберите любую таблицу и запустите CHECKSUM TABLE. главного и подчиненного для таблицы на главном и копии ведомой этой же таблицы.
ПРИМЕР
Если у вас есть таблица
mydb.mytable
, выполните команду против нее:Если значения не совпадают, значит что-то не синхронизировано.
Если вы хотите изучить кучу столов в большом количестве, вы можете использовать MAATKIT от Percona. Вам понадобятся два специальных инструмента (у Percona также есть Percona Toolkit, который они сами разделили из MAATKIT, который теперь продвигается больше)
или
pt-table-checksum
выполнит ТАБЛИЦУ КОНТРОЛЯ СУММ против всех столов на Master и Slave. Вы можете настроить его, чтобы сделать все базы данных только на определенные.pt-table-sync
можно запустить на Рабе против любого стола. Используя опции --print и --sync-to-master, вы можете увидеть, какие операторы SQL необходимо выполнить на подчиненном устройстве, чтобы оно полностью соответствовало мастеру. Этот инструмент не работает с таблицей, в которой отсутствует PRIMARY KEY или UNIQUE KEY.Я использовал MAATKIT в течение многих лет. Я все еще делаю. Я еще не пробовал Percona Toolkit, но я уверен, что он должен быть того же качества, что и MAATKIT.
источник