LINUX.ORG.RU
решено ФорумAdmin

Как в MySQL 5.6 сделать, чтобы бинарные логи писались только для конкретных БД?

 


1

1

Всем доброго времени суток.

Собственно сабж. Видел пару месяцев назад статью на эту тему, но не могу найти. Либо она мне приснилась, либо что-то со мной не так.


Ответ на: комментарий от hanharr

--binlog-do-db=db_name

Работа этого механизма сильно зависит от других факторов. Это далеко не безусловный фильтр по названию базы, увы. Поэтому внимательно прочитайте описание и решите для себя, подходит ли это под конкретно ваш случай. А то вы получите в бинарном логе вовсе не то, что ожидаете.

VitalkaDrug ★★
()
Ответ на: комментарий от VitalkaDrug

Вообще, если туда попадёт что-то лишнее не так страшно. Ситуация какая. Есть БД и есть её реплика. И вот на slave я хочу, чтобы бинарные логи писались только для реплицируемых БД. Потому что была тут ситуация, когда на реплике развернули тестовую базу, в неё попробовали сделать восстановление из бинарного лога и это убило репликацию с ошибкой:

Could not execute Update_rows event on table crm.ManagersTotals; Can't find record in 'ManagersTotals', Error_code: 1032; handler error HA_ERR_KEY_NOT_FOUND; the event's master log mysql-bin.002420, end_log_pos 92476480

Реплику я восстановил за пару часов. Но, сделал выводы, что лучше там ничего не делать и на всякий случай писать бин логи только для реплицируемых БД.

hanharr
() автор топика
Ответ на: комментарий от VitalkaDrug

Хм, весело. Как я понимаю, и опция binlog_ignore_db может отработать не совсем корректно. А есть еще варианты, как можно крутить другие БД на реплике и не сломать реплику?

hanharr
() автор топика
Ответ на: комментарий от hanharr

Я так понимаю что правильно делать только полную реплику :)

VitalkaDrug ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.