Задать вопрос

Копирование базы данных MySQL Windows=>Linux без долгих блокировок

Приветствую! Столкнулся с небольшой проблемой, нужен совет, надеюсь на помощь сообщества.
Имеется удалённый MySQL-сервер работающий на Windows (и не спрашивайте почему) с двумя большими базами (500 Мбайт и постоянно увеличивается). В базе происходит очень частая запись, сложные модифицирующие запросы и копирование данных из одной в другую.
Необходимо запустить на отдельном сервере (Linux) веб-приложение, которое будет выдавать пользователям информацию из одной из этой баз, данные берутся исключительно для чтения. Приложением будут пользоваться несколько человек одновременно, поэтому встаёт задача периодически копировать базу на сервер веб-приложения. Актуальность данных не большая: 10-60 минут. Блокировать таблицы можно максимум ~30 сек.
1) Репликация не подходит, так как с головного сервера будет приходить куча модифицирующих запросов, поэтому всё встанет колом.
2) mysqldump слишком медлителен, слишком долго будет блокировать таблицы.
3) Percona/mysqlhotcopy — не подходят, т. к. головной сервер на windows.
4) Остаётся вариант только с SELECT INTO OUTFILE и LOAD DATA INFILE с выборкой только изменившихся записей (ввести поле с «ON UPDATE CURRENT_TIMESTAMP»).

В правильном ли направлении я иду, или может существует более элегантное решение?
  • Вопрос задан
  • 3912 просмотров
Подписаться 3 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 2
opium
@opium
Просто люблю качественно работать
Чем вам не подходит репликация. там юзается бинарные логи и просто будут изменения копироваться, а не выполняться запросы на втором сервере.
Ответ написан
sevka_fedoroff
@sevka_fedoroff
Репликация?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы