mysqldump с единственной опцией транзакции на живых рабочих серверах

Попробуйте find(1) команда. Можно сказать этому искать только каталоги (-type d) и искать только указанную глубину из Вашего рабочего каталога (-maxdepth x). Далее можно сказать, находят для выполнения команды на каждом соответствии вместо того, чтобы просто печатать его имя (-exec).

Например, для выполнения git status на всех каталогах в Вашем текущем рабочем каталоге сделать

find -type d -maxdepth 1 -exec git status {} \;

1
задан 4 February 2011 в 20:12
4 ответа

Для таблиц InnoDB - единственная транзакция гарантирует, что дамп каждой таблицы последователен, но это будет не обязательно согласовываться с другими таблицами, так как это блокирует и выводит их по одному вместо того, чтобы блокировать их всех на время дампа. И у Вас, конечно, будут отложенные записи, ожидающие блокировки, чтобы выпустить, при попытке записать в таблицу, в то время как она выводится.

Лучшая ставка должна использовать LVM или файловую систему, которая позволяет Вам брать снимки, затем блокировать всю базу данных для просто достаточно долго для взятия снимка, который Вы можете затем обратно на Вашем досуге.

1
ответ дан 3 December 2019 в 22:16

Мне трудно сказать знание w/out: схема доступа Вашего сайта w/the DB, трафик DB, или как большой Вы ожидаете, что DB доберется. Если Вы - прекрасный w/any вид блокировки, которая произойдет, я говорю, идут для него.

Я нахожусь в среде, где любая блокировка выше и вне типичного использования не приемлема, и наш DBS приблизительно 750 ГБ. То, что мы делаем, является взятием снимок LVM и затем выполняет mysqldump от снимка. Уверенный мы получаем некоторую ухудшенную производительность во время снимка, но это лучше, чем завершенная блокировка таблиц.

1
ответ дан 3 December 2019 в 22:16

Mysqldump блокирует сохраняемый DB, таким образом, необходимо рассмотреть использование живого резервного инструмента как xtrabackup. Необходимо будет использовать сборку MySQL Percona и преобразовать все таблицы в InnoDB. Последний плагин InnoDB от поддержек Oracle живое резервное копирование также, не может помнить название их живого резервного инструмента.

0
ответ дан 3 December 2019 в 22:16

Я думаю, что mysql репликация является хорошей опцией. Mysql генерируют новые журналы после фиксации транзакции. Так, у Вас будут последовательные резервные копии насколько Вы используете транзакции правильно.

Одно полное резервное копирование вначале, и затем можно получить сгенерированные двоичные журналы системой репликации. Когда-либо прикладной двоичный файл журнала должен обновить базу данных последовательным способом.

Это может всегда использоваться. Однако опция использования системных снимков не может быть выполнимой, поскольку это связано с файловой системой, которую Вы используете.

0
ответ дан 3 December 2019 в 22:16

Теги

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