Моя команда tar
tar --remove-files -cvif 2011-08-02_14-05-09.tar 2011-08-02_14-05-09
Пишет 80МБ / с. Это выходит за рамки возможностей, которые мы можем сэкономить, потому что MySQL начинает выстраивать очередь записи, и в конечном итоге мы получаем предупреждения мониторинга, потому что системы не будут ждать вечно MySQL и истечет время ожидания.
В: Могу я дроссель tar
делать только 20МБ / с?
Ничего не нашли на странице руководства, и мы уже пробовали с самым низким ionice
класс: /usr/bin/ionice -c3 tar <...>
но это не влияет на количество записанных / s МБ, и MySQL все равно зависает.
Может быть ionice
игнорируется, потому что мы находимся на /dev/md0
программное устройство RAID?
Ты можешь использовать водосточная труба.
Скачал, попробовал и вроде DTRT. Это должно сработать для вас:
tar --remove-files -cvif - 2011-08-02_14-05-09 | ratepipe -r 20 > 2011-08-02_14-05-09.tar
Вероятно, вы могли бы записать tar в stdout (используя -f -) и направьте его в то, что дросселирует. Я посмотрю, смогу ли я что-нибудь быстро найти.
Поскольку tar не буферизует много, он должен ждать чтения.
Изменить: MikeB превзошел меня: подойдет ratepipe.