Size: a a a

2020 December 22

S

Syntax Highlight Bot in MySQL
Stefan
добрый день, делаю бэкап чисто таблиц, без данных таким образом
mysqldump \
--no-data \
--routines \
--events \
--single-transaction \
-u root \
-ppassword \
-h hostname \
$db > $BACKUP_DIR/$TIME/$db.sql
импорт таблиц проходит успешно
НО когда я включаю слейв для того чтоб он данные залил в таблицы, то в логах без конца это с разными таблицами:
2020-12-22T11:33:57.702805Z 4 [Note] Slave SQL for channel '': Could not execute Update_rows event on table dmp.users; Can't find record in 'users', Error_code: 1032; handler error HA_ERR_KEY_NOT_FOUND;
следовательно в таблицы ничего не попадает
пробовал и без read_only запустить слейв, но тоже не помогает
что я не учел?(
источник

G

Grigorij in MySQL
А ты уверен, что понимаешь концепцию мастер-слейв репликации и бекапов? Есть ли у тебя бинлоги с мастера со всеми изменениями за всё время существования базы?
источник

G

Grigorij in MySQL
Ты бы мастер заблокировал на запись, позицию бинлога запомнил, бекап с данными сделал, мастер на запись разлочил, на слейв бекап загрузил и репликацию включил
источник

G

Grigorij in MySQL
Если юзаешь lvm, то можно через него  снепшот скопировать (легче и быстрее).
источник

G

Grigorij in MySQL
Концептуальная твоя проблема в том, что у тебя есть:
1. Мастер с данными
2. Пустой слейв.
Ты включаешь репликацию. На мастер приходит изменение какой то строки в  таблице users.
Слейв пытается найти у себя эту строку и изменить, но не находит. Данных то на нём нет никаких.

Так можно делать только, если у тебя есть бинлоги за всё время существования базы, в которых есть 100% всех изменений произошедших с базой.
Таких обычно ни у кого нет, потому что бинлоги занимают огромное кол-во места. Ну кроме совсем мелких баз, или баз без update/delete.
источник

G

Grigorij in MySQL
Stefan
добрый день, делаю бэкап чисто таблиц, без данных таким образом
mysqldump \
--no-data \
--routines \
--events \
--single-transaction \
-u root \
-ppassword \
-h hostname \
$db > $BACKUP_DIR/$TIME/$db.sql
импорт таблиц проходит успешно
НО когда я включаю слейв для того чтоб он данные залил в таблицы, то в логах без конца это с разными таблицами:
2020-12-22T11:33:57.702805Z 4 [Note] Slave SQL for channel '': Could not execute Update_rows event on table dmp.users; Can't find record in 'users', Error_code: 1032; handler error HA_ERR_KEY_NOT_FOUND;
следовательно в таблицы ничего не попадает
пробовал и без read_only запустить слейв, но тоже не помогает
что я не учел?(
вобщем вот
источник

IZ

Ilia Zviagin in MySQL
Stefan
добрый день, делаю бэкап чисто таблиц, без данных таким образом
mysqldump \
--no-data \
--routines \
--events \
--single-transaction \
-u root \
-ppassword \
-h hostname \
$db > $BACKUP_DIR/$TIME/$db.sql
импорт таблиц проходит успешно
НО когда я включаю слейв для того чтоб он данные залил в таблицы, то в логах без конца это с разными таблицами:
2020-12-22T11:33:57.702805Z 4 [Note] Slave SQL for channel '': Could not execute Update_rows event on table dmp.users; Can't find record in 'users', Error_code: 1032; handler error HA_ERR_KEY_NOT_FOUND;
следовательно в таблицы ничего не попадает
пробовал и без read_only запустить слейв, но тоже не помогает
что я не учел?(
А что ты пытаешься сотворить?
источник

S

Stefan in MySQL
Grigorij
вобщем вот
та бэкап с данными я то накатывал, норм проходило
хотел ускорить заведение слейва в существующий кластер
источник

S

Stefan in MySQL
Ilia Zviagin
А что ты пытаешься сотворить?
завести пустую реплику, накатив только базы данных с разметкой
источник

S

Stefan in MySQL
а данные залить посредством репликации
источник

G

Grigorij in MySQL
Для этого нужны бинлоги. Ну и это не будет быстрее
источник

G

Grigorij in MySQL
Скорее даже медленнее
источник

S

Stefan in MySQL
Grigorij
вобщем вот
а mysqldump с ключем —master-data не поможет разве?
источник

IZ

Ilia Zviagin in MySQL
Stefan
а данные залить посредством репликации
Для этого нужна заливка данных И НА МАСТЕР С НУЛЯ.
источник

S

Stefan in MySQL
Ilia Zviagin
Для этого нужна заливка данных И НА МАСТЕР С НУЛЯ.
источник

S

Stefan in MySQL
да что ж так печально всё
источник

IZ

Ilia Zviagin in MySQL
Жизнь тяжела, да
источник

G

Grigorij in MySQL
Stefan
а mysqldump с ключем —master-data не поможет разве?
Хз, мне удобнее самому. Он вроде ещё и change master добавлять в дамп, что не всегда удобно. Не использую вобщем
источник

IZ

Ilia Zviagin in MySQL
Grigorij
Хз, мне удобнее самому. Он вроде ещё и change master добавлять в дамп, что не всегда удобно. Не использую вобщем
А как самому, кстати?
источник

G

Grigorij in MySQL
show master status
источник